1

编辑

也许我错误地描述了这个问题。让我补充一点,这个分段控制器NSTimer使用以下代码控制 a 的速度。

- (IBAction) segmentAction:(id)sender
{
    speed = [[speeds objectAtIndex:[sender selectedSegmentIndex]] integerValue];
}

- (IBAction)startPause: (UIButton *)sender{
    NSString *buttonTitle = sender.currentTitle;
    if ([buttonTitle isEqualToString: @"Pause"]) {

        [self.myButton setTitle:@"Resume" forState:UIControlStateNormal];
        [timer invalidate];
    }
    else
    {
        [self.myButton setTitle:@"Pause" forState:UIControlStateNormal];
        if ([self.deal length]>cardNum) {
            timer = [NSTimer scheduledTimerWithTimeInterval:speed
                                                     target:self
                                                   selector:@selector(dealCard)
                                                   userInfo:nil
                                                    repeats:YES];
        }
        else
        {
            [timer invalidate];
        }
    }
}

当用户在点击按钮之前点击 segmentedController 中的任何段时startPause,NSTimer 工作正常。如果用户startPause在点击片段之前点击按钮,那么 NSTimer 不会发生(期望的)延迟。这是否有助于更好地解释这种情况?

编辑

我在 Storyboard 中有一个 UISegmentedControl 并想要初始化它。在情节提要本身中初始化它会特别好。下图显示了 Med 段是如何被选择的,但是当应用程序启动时,Med 没有被选择;而是用户必须触发Value changed事件。最初如何选择它?SO上的其他问题之一建议使用以下代码,但我还没有弄清楚如何将我的故事板中的 UISegmentedControl 与 name 相关联segmentControl

segmentControl.selectedSegmentIndex=-1;

控制的故事板视图

4

0 回答 0