分段控件会影响按钮

时间:2013-10-01 03:45:14

标签: ios objective-c uiviewcontroller ios7 xcode5

我需要设置分段控件以影响我的按钮发送给用户的位置。是将它们发送到新屏幕,否则将它们发送到下一个屏幕。

第1段:

UISegmentedControl *par;

是(0)单击下一个按钮将用户发送到UIViewController ParError。 No(1 - Default)在点击下一个按钮时将用户发送到UIViewController TermsUI。

第二段:

UISegmentedControl *basicOp;

是(0)在点击下一个按钮时将用户发送到UIViewController Unsupported。 No(1 - Default)在点击下一个按钮时将用户发送到UIViewController TermsUI。

我已经尝试了If语句并且它变得复杂,并且在选择两者时我一直都会遇到错误。有人想要一份工作吗?我无法用任何开发人员指南来解决这个问题。请帮忙吗?

我是Xcode和Objective-C的新手,所以请解释如何做事的步骤。

注意:我不需要将其作为子视图。它正在做的是将用户推送到另一个屏幕,给出关于该做什么的新指令,然后将它们带到与原始屏幕不同的另一个屏幕。

1 个答案:

答案 0 :(得分:0)

要获取SegmentControls的当前值,请使用属性.selectedSegmentIndex。这将返回您在segmentControl (More information about UISegmentedControl class reference)中选择的选项的索引,

据我所知,par段只有两个元素:YESNO。按此特定顺序,

if (par.selectedSegmentIndex == 0) {
    // YES is selected, perform the action for going to ParError UIViewController
} else {
    // NO is selected, perform the action for going to TermsUI UIViewController
}

如果basicOp在同一订单上还有两个选项:YESNO

if (basicOp.selectedSegmentIndex == 0) {
    // YES is selected, perform the action for going to Unsupported UIViewController
} else {
    // NO is selected, perform the action for going to TermsUI UIViewController
}

假设您想要实现以下目标:

  • 如果par处于启用状态(无论值是basicOp),应用会将用户发送到ParError UIViewController
  • 如果par处于“否”状态且basicOp处于“是”状态,则应用会将用户发送至Unsupported UIViewController
  • 如果par处于“否”状态并且basicOp已启用,则应用会将用户发送至TermsUI UIViewController

你应该拥有的条件是:

if (par.selectedSegmentIndex == 0) {
    // YES is selected, perform the action for going to ParError UIViewController
} else if (basicOp.selectedSegmentIndex == 0) {
    // YES is selected, perform the action for going to Unsupported UIViewController
} else if (par.selectedSegmentIndex == 1 || basicOp.selectedSegmentIndex == 1) {
    // NO is selected, perform the action for going to TermsUI UIViewController
}