ViewDidLoad没有设置正确的按钮状态

时间:2014-09-27 02:46:31

标签: ios objective-c

我更改了我的分段控件,因为新的手机尺寸和iOS 8,它切断了我的第一段,更改为固定,宽度为38到39。现在我的初始按钮状态没有设置。特别是我的开始按钮没有初始化为YES。

 - (void)viewDidLoad
 {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    // Updates time on currentTimeLabel
    [self updateTime];

    // Sets initial button states
    [self setInitialState];

    // Sets UITextField delegate
    self.startLevel.delegate = self;
    self.stopLevel.delegate = self;

     // initializes basic values for tank control
    bigTank = YES;
    tankResource = @"dragonBarrelChart";
    [self.tankControl setSelectedSegmentIndex:0];

    NSLog(@"Tank Calculator view did load.");

}

我完全惊呆了。没有任何意义。使用按钮进行手动复位后,所有按钮都会根据需要复位。

这是由按钮和viewDidLoad触发的setInitialState代码。应该同样工作......

// Sets initial button and label states
- (void)setInitialState
 {
    self.start.enabled = YES;
    self.stop.enabled = NO;
    self.calculate.enabled = NO;
    self.resume.enabled = NO;

    // Text for time labels reset
    _startTimeLabel.text = @"- -:- -:- -.- -";
    _stopTimeLabel.text = @"- -:- -:- -.- -";

    // Resets the minuteRateLabel
    _minuteRateLabel.text = @"--.--";

    // Resets the text fields to their initial state with the placeholder "inches" text
    [_startLevel setText:nil];
    [_stopLevel setText:nil];

    // Resets inch levels to EVEN
    [self.startFractionControl setSelectedSegmentIndex:0];
    [self.stopFractionControl setSelectedSegmentIndex:0];
    startFractions = @"";
    stopFractions = @"";

}

我做错了什么???在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我看到您使用self.startLevel.delegate = self;self.stopLevel.delegate = self;设置了代理,但您是否也设置了分段控件代理?