2014-09-27 63 views
0

我改变了我的分段控制,因为使用新的手机尺寸和iOS 8,它切断了我的第一段,改为固定,宽度为38到39。现在我的初始按钮状态没有设置。具体来说,我的开始按钮没有初始化为YES。ViewDidLoad没有设置正确的按钮状态

- (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 = @""; 

} 

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

+0

你如何确定启动按钮不是启动到YES(我假设你的意思是启用状态)? – rdelmar 2014-09-27 04:27:20

+0

因为它在模拟器中启动时无法启动。 – 2014-09-27 06:05:51

+0

我在问你怎么知道的。它只是没有响应触摸,或者它也变灰了吗? – rdelmar 2014-09-27 06:29:39

回答

0

我看到你设置了代表self.startLevel.delegate = self;self.stopLevel.delegate = self;,但是你是否也设置了分段控制代表?

+0

setInitialState包含开始按钮状态。它在viewDidLoad中被击中。这会如何改变?按钮状态 [self setInitialState]; – 2014-09-27 03:56:29