0

我想要一个 UISegmentedControl ,其中包含许多可选选项,但还包括一个信息按钮,它是不可选择的。UISegmentedControl 类参考讨论了使用瞬时披露按钮,暗示它是可能的,但是那里或头文件中没有其他任何东西解释如何做这样的事情。

那么我该怎么做呢?

4

1 回答 1

1

经过大量实验,我发现在所选索引上保留一个影子变量可以让我做到这一点。在以下代码中,信息按钮为 1,其他按钮可选。在viewDidLoad设置初始值(或向控件询问其选定的索引)。然后将以下代码用于操作方法:

- (IBAction)segmentAction:(UISegmentedControl *)sender
{
    NSUInteger idx = [sender selectedSegmentIndex];
    switch(idx) {
    case 1:  // momentary button
        sender.selectedSegmentIndex = selectedIndex;
        break;
    default:
        selectedIndex = idx;
        // other stuff
        break;
    }
    ...

基本上您需要做的就是重置选定的索引。仅在 iOS7 上测试。

于 2013-09-30T15:02:28.633 回答