2017-08-17 38 views
1

我已经搜索了关于分段控制的web和youtube,但我只找到如何更改为不同视图的示例。使用分段控制Swift 3

我的目标是从分段控制中获取选定的值,并将其用于另一个按钮上的操作。

我会尽量解释一下我的意思是:

@IBAction func segmentetControll(_ sender: UISegmentedControl) { 
    value 1 
    value 2 
    value 3 
} 

@IBAction func calculateButton(_ sender: Any) { 
    if value 1 { 
     do this 
    } 
    else if value 2 { 
     Do that 
    } 
    else if value 3 { 
     Do thids 
    } 

回答

3

你需要它通过@IBOutlet连接到文件。 然后你可以使用它的索引来做你想做的任何事情。

@IBOutlet var segmentedControl: UISegmentedControl! 

@IBAction func calculateButton(_ sender: Any) { 
    let index = segmentedControl.selectedSegmentIndex 
    //... 
} 
+0

感谢大家的快速响应!使用Orkhan Alikhanov的解决方案,现在它工作正常。 –

1

您需要创建连接到在界面生成器分段控制,然后在calculateButton方法,你可以在segmentedControl.selectedSegmentIndex切换的@IBOutlet var segmentedControl: UISegmentedControl?财产。让我知道你是否需要进一步的解释。

0

将代码放入通过故事板或Xib文件连接的IBAction方法是正确的方法。将动作连接到控件并编写代码时,可以使用强类型:

@IBAction func calculateButton(_ sender: UISegmentedControl) { 
    switch(sender.selectedSegmentIndex){ 
    case 1: 
     // Do something 
    case 2: 
     // Do something 
    case 3: 
     // Do something 
    default: 
     break 
    } 
}