我有一个UISegmentedControl,其中包含两个部分(索引为0和1),我想通过编程的方式将它们重置为0。当我运行下面的命令时,它并没有像预期的那样重置段落索引为0,而是突出显示索引为1的段落。
[seg setSelectedSegmentIndex:0];
奇怪的是,当我记录所选段时,它返回0
。
NSLog(@"seg setSelectedSegmentIndex %d", seg.selectedSegmentIndex);
另外奇怪的是,运行setSelectedSegmentIndex:0
之后,我无法通过触摸重新选择第0个选项卡,它似乎被锁定到第1个选项卡,直到我点击1号选项卡,然后才能正常工作。
这是按钮的设置:
itemArray = [NSMutableArray arrayWithObjects: @"Zero", @"One", nil];
seg = [[UISegmentedControl alloc] initWithItems:itemArray];
[seg setFrame:segRect];
seg.segmentedControlStyle = UISegmentedControlStyleBar;
seg.momentary = NO;
[seg addTarget:self action:@selector(someAction:) forControlEvents: UIControlEventValueChanged];
[mainView addSubview:seg];
注意:重新陈述我在这个问题中想要实现的目标:我希望通过一个变量动态地设置UISegmentedControl的选定索引,获取适当的视觉反馈,并在一个方法中检查选定的索引,根据所选的索引做出相应的操作。请参见下面我的答案,了解解决方案。