我有一个按钮,我希望在选择3个分段控件时分别执行不同的代码。 EX)如果选择segment1,则按下按钮时将执行Code1。如果选择segment2,则按下按钮时将执行Code2。我以前没有使用Segmented Controls,任何人都知道如何做到这一点?针对每个分段控件段的不同按钮操作
回答
假设你有你的按钮目标的动作设置和一个IBOutlet到你的分段控制可以做到以下几点。
- (IBAction)buttonPressed:(UIButton *)sender
{
NSInteger selectedIndex = self.segmentedControl.selectedSegmentIndex;
switch(selectedIndex)
{
case 1: [self methodOne]; break;
case 2: [self methodTwo]; break;
case 3: [self methodThree]; break;
default : break; //Do nothing
}
}
只是做一个非常简单的方法: - 如果您已经采取segmentcontrol的出口,然后那样做如下: -
NSInteger sel=[yourSegmentCntrl
selectedSegment];
If (sel==1)
{
//write your code
}
像THT方式,您可以相应地检查你的条件 –
是否Objective-C中有相当于Java脚本switch语句的?我认为这将是最有效的。否则,这就是我正在寻找的。 – MacBoss123541
是的defintely,它有切换的情况下:)上面的示例只是为了方便理解。 –
由于我工作的这个最近我想我会添加其他的答案,可以帮助斯威夫特家伙出过渡到的OBJ-C。这有点更明确,并且与我们在Swift中看到的IBOutlets相匹配。
- (IBAction)segmentedControlAction:(id)sender {
// This property can be a simple primitive. No need for an NSObject like NSInteger.
int selectedIndex = self.segmentedControlOutlet.selectedSegmentIndex;
switch(selectedIndex)
{
// Simply changing output to label
case 0: self.label.text = @"Segment 1 was selected";
break;
case 1: self.label.text = @"Segment 2 was selected";
break;
case 2: self.label.text = @"Segment 3 was selected";
break;
case 3: self.label.text = @"Segment 4 was selected";
break;
default : break; //Do nothing
}
}
- 1. 针对两个不同操作的单段路由
- 2. 分段控件影响按钮
- 3. 分段控制差分按钮
- 4. 分段按钮值setPressed不工作
- 5. 如何让每个切换按钮执行不同的操作?
- 6. 在gradle build的installApp阶段对每个文件执行操作
- 7. 带有2个按钮的分段控件
- 8. 对表单中的每个单选按钮有不同的操作
- 9. 对循环中动态创建的每个按钮有不同的操作
- 10. 每个字段的删除按钮
- 11. 针对每个数据库的操作
- 12. 区分不同按钮字段的事件
- 13. iPhone分段控制与系统按钮
- 14. 使用按钮调用单个片段中的不同片段
- 15. 的Android:针对不同的片段
- 16. 的Android - 分段圆按钮
- 17. 分段控件
- 18. MVC4:针对不同的操作
- 19. jQuery条件:不同字段中的多个单选按钮
- 20. 我有段0,1,2,3,4分段控件,但我想在同一个UISegmentControl
- 21. 在UItableview中对每个单元格中的每个按钮采用不同操作的UIbutton
- 22. asp.net必需的字段验证每个按钮动作调用
- 23. SAPUI5分段按钮选择
- 24. setSelectedButton&setSelectedKey分段按钮
- 25. 分段按钮OpenUI5 setSelectedButton
- 26. 针对不同分支标准的操作LINQ
- 27. 按分段标题推送到分段控制段
- 28. Android的切换按钮/按键分段
- 29. iOS8分段控件拖动长按
- 30. 根据每个片段中的标题更改分段控件的宽度?
很遗憾,IB或Storyboard文件显然无法做到这一点。 (1) – Benjohn