微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift – 将UISwitch切换为BarButtonItem

我有一个开关作为一个条形按钮,但我不知道如何引用一个条形按钮项目的开/关值.除了条形按钮项目之外,XCode不允许将开关识别为其他任何内容.该开关嵌入在按钮中,无法引用.

@IBOutlet weak var toggleOutlet: UIBarButtonItem!
@IBAction func toggleButton(sender: UIBarButtonItem) {

   // if toggleOutlet.on // not recognized as bar button item

如果有人能提供帮助,那就太好了
谢谢

解决方法

谢谢你的查询.

您可以使用以下步骤执行此操作.

在视图中加载,调用setRightNavButton()并执行添加任务,

更新到Swift 4.1:

func audioSwitch(){
    let switchControl = UISwitch(frame: CGRect(origin: CGPoint(x: 0,y :0),size: CGSize(width: 50,height: 30)))
    switchControl.isOn = true
    switchControl.onTintColor = UIColor.white
    switchControl.seton(true,animated: false)
    switchControl.addTarget(self,action: #selector(ViewController.switchValueDidChange(sender:)),for: .valueChanged)
    self.navigationItem.rightBarButtonItem = UIBarButtonItem.init(customView: switchControl)
}

@objc func switchValueDidChange(sender: UISwitch!)
{
    if sender.isOn {
        print("on")
    } else{
        print("off")
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐