如何制作多线UISegmentedControl。我需要它有6个按钮,每行3个。我怎么能以编程方式做到这一点?
答案 0 :(得分:6)
您需要使用selectedSegmentIndex
属性中的两个。如果,当你从一个控件获得一个动作时,你将另一个控件属性的值设置为-1
,它将有效地为你提供一组六个按钮,这两个按钮在两行中显示为一组链接在一起。 / p>
答案 1 :(得分:1)
只需将代码添加到@Adam EberBach的答案:
在viewDidLoad
[self.orderOptionsSegmentedControl1 addTarget:self action:@selector(disableOtherSegmentedControl:) forControlEvents:UIControlEventValueChanged];
[self.orderOptionsSegmentedControl2 addTarget:self action:@selector(disableOtherSegmentedControl:) forControlEvents:UIControlEventValueChanged];
然后实施disableOtherSegmentedControl
- (void) disableOtherSegmentedControl:(id)sender
{
if (sender == self.orderOptionsSegmentedControl1)
{
self.orderOptionsSegmentedControl2.selectedSegmentIndex = -1;
}
else if (sender == self.orderOptionsSegmentedControl2)
{
self.orderOptionsSegmentedControl1.selectedSegmentIndex = -1;
}
}