【问题标题】:Use Segmented Control Swift 3使用分段控制 Swift 3
【发布时间】:2018-01-26 04:15:42
【问题描述】:

我已经在网络和 youtube 上搜索了有关分段控制的信息,但我只找到了如何更改为不同视图的示例。

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

我会尽量解释我的意思:

@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
    }

【问题讨论】:

    标签: ios swift button controls uisegmentedcontrol


    【解决方案1】:

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

    @IBOutlet var segmentedControl: UISegmentedControl!
    
    @IBAction func calculateButton(_ sender: Any) {
        let index = segmentedControl.selectedSegmentIndex
        //...
    }
    

    【讨论】:

    • 感谢大家的快速回复!使用了 Orkhan Alikhanov 的解决方案,现在效果很好。
    【解决方案2】:

    将代码放在通过情节提要或 Xib 文件连接的 IBAction 方法中是正确的做法。您可以在将操作连接到控件时使用强类型并编写代码,例如:

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

    【讨论】:

      【解决方案3】:

      您需要在 Interface Builder 中创建一个连接到分段控件的 @IBOutlet var segmentedControl: UISegmentedControl? 属性,然后在 calculateButton 方法中您可以切换 segmentedControl.selectedSegmentIndex。如果您需要进一步解释,请告诉我。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多