2016-03-23 15 views
2

Çubuk düğmesi olarak bir anahtarım var ancak bir bar düğme öğesi için açma/kapama değerine nasıl başvuracağımı bilmiyorum. XCode, düğmenin bir çubuk düğme öğesi dışında başka herhangi bir şey olarak tanınmasına izin vermez. Anahtar, barbuttona gömülüdür ve referans edilemez.UISwitch'i BarButtonItem olarak değiştir

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

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

herkes bu .. ama işlev kabul edilmesi değil harika sayesinde

cevap

0

yaklaştıkça olacağını yardımcı olabilir; [sorgunuzla

@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

teşekkürler.

Aşağıdaki adımları kullanarak bunu yapabilirsiniz.

görünümünde yük,

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") 
    } 
} 

Teşekkür

, setRightNavButton() arayıp olarak katılma görevi yaptın
İlgili konular