通过按钮更改分段控件

时间:2014-05-07 18:54:12

标签: ios7 xcode5 objective-c-blocks

除了四个标签外,我还需要四个按钮,而不是VC底部带有4个按钮的分段控制。这是分段控件的代码,我不知道如何设置按钮来激活由datePicker填充的标签。任何帮助表示赞赏。

- (IBAction)didChangeDate:(UIDatePicker *)sender {
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"HH:mm"];

[formatter setTimeZone:[NSTimeZone localTimeZone]];

NSString *formattedDate = [formatter stringFromDate:self.datePicker.date];

switch (self.segmentedControl.selectedSegmentIndex) {
    case 0:
        _outLabel.text = formattedDate;
        outTime = self.datePicker.date;
        break;
    case 1:
        _inLabel.text = formattedDate;
        inTime = self.datePicker.date;
        break;
    case 2:
        _offLabel.text = formattedDate;
        offTime = self.datePicker.date;
        break;
    case 3:
        _onLabel.text = formattedDate;
        onTime = self.datePicker.date;
    default:
        break;
}

}

1 个答案:

答案 0 :(得分:1)

使用标记创建按钮

  [_buttonOne setTag:0];
  [_buttonTwo setTag:1];
  [_buttonThree setTag:2];
  [_buttonFour setTag:3];

然后你可以添加一个IBAction选择器,使用按钮绑定选择器:

 - (IBAction)buttonSelector:(UIButton *)sender;

使用上述开关案例进行条件选择

switch ([sender tag]) {
    case 0:
        _outLabel.text = formattedDate;
        outTime = self.datePicker.date;
        break;
    case 1:
        _inLabel.text = formattedDate;
        inTime = self.datePicker.date;
        break;
    case 2:
        _offLabel.text = formattedDate;
        offTime = self.datePicker.date;
        break;
    case 3:
        _onLabel.text = formattedDate;
        onTime = self.datePicker.date;
    default:
        break;
}

您还可以在上面的开关案例中添加select / Deselect的代码。

希望它有所帮助。:)