2016-03-23 7 views
2

私はバーボタンとしてスイッチを持っていますが、バーボタンアイテムのオン/オフ値の参照方法はわかりません。 XCodeでは、スイッチがバーボタン以外の項目として認識されることはありません。スイッチはバーボタンに埋め込まれており、参照することはできません。UISwitchをBarButtonItemとして切り替えます

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

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

誰もが...それが近づい おかげ

答えて

0

素晴らしいことだ助けることができるが、機能が認識されていない場合は、クエリの[

@IBAction func togglePresence(sender: UIBarButtonItem) { 
    updateSwitch() 
} 

// hold empty status of switch 
// this is set to true during viewDidLoad 
var statusofswitch:Bool! 

func updateSwitch() { 
    if statusofswitch == true { 
     statusofswitch = false 
    } 
    if statusofswitch == false { 
     statusofswitch = true 
    } 
} 
3

感謝。

次の手順でこれを行うことができます。

ビューでは、負荷、

func setRightNavButton() { 

    let switchControl=UISwitch(frame:CGRectMake(0, 0, 51, 31)) 
    switchControl.on = true 
    switchControl.onTintColor = K.Color.AppBackgroundColor 
    switchControl.setOn(true, animated: false) 
    switchControl.addTarget(self, action: #selector(NotificationVC.switchValueDidChange(_:)), forControlEvents: .ValueChanged) 
    self.navigationItem.rightBarButtonItem = UIBarButtonItem.init(customView: switchControl) 

} 


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

おかげ

setRightNavButton()を呼び出し、などの付加作業をしました
関連する問題