关于视图和UISegmentedControl

时间:2012-08-07 23:30:17

标签: objective-c

我对这些观点有疑问。现在我已经创建了一个视图控制器(根视图),其中包含表视图。单击单元格将进入详细视图,其中我有UISegmented控件,有四个选项。单击任何分段控制按钮,根据选择加载数据(我有switch语句,根据它加载表视图数据)。所有这些都很好。

问题是: 例如,考虑我有四个UISegmented按钮 - A,B,C,D。单击A将加载带有一些数据的表格视图 - 在A视图中单击特定单元格应该带我到不同的视图,其中包含一些不同的内容。同样,单击B将加载包含一些数据的表格视图 - 在B视图中单击特定单元格应加载不同的视图。

由于这是一个UI分段控件,我无法使用每个按钮将其连接到不同的视图。我想知道我是否可以通过编程方式编写代码。

有人能回答我是否可以通过编程方式进行操作吗?

感谢您的帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

当然,您可以在按下特定片段时执行任何操作。首先,当您按下UISegmentedControl的某个部分时,您会注册接收通知:

[segmentedControl addTarget:self
                     action:@selector(segmentPressed:)
           forControlEvents:UIControlEventValueChanged];

如果您愿意,也可以在Interface Builder中执行等效操作。然后在你的行动中你会做类似的事情:

- (IBAction)segmentPressed:(id)sender
{
    UISegmentControl *segmentControl = sender;

    if (segmentControl.selectedSegmentIndex == 1) {
        // Do whatever you want when the first segment is selected
    } else if (segmentControl.selectedSegmentIndex == 2) {
        // Second segment selected
    }
    // ....
}