2016-05-17 8 views
0

私のビューコントローラにはUISwitchがあり、それをトグルするとボタンのテキストが変わります。私はそれをオフにトグルし、それはdoesntの仕事を初めて、しかし、あなたはそれが動作する2回目を試みる場合...私のコードで何かが欠けている?スウィフトUISwitchが初めて動作しない

 UISwitchOutlet.addTarget(self, action: #selector(MainPageViewController.switchChanged(_:)), forControlEvents: UIControlEvents.ValueChanged) 


func switchChanged(mySwitch: UISwitch) { 
    let value = UISwitchOutlet.on 
    if value { 
     self.enterRoom.titleLabel?.text = "Enter Room" 
    } else { 
     self.enterRoom.titleLabel?.textAlignment = NSTextAlignment.Center 
     self.enterRoom.titleLabel?.text = "Create" 


    } 
} 
+0

if value {'条件の前に' let value = UISwitchOutlet.on'を定義することは意味をなさない。 elseオプションには決して行きません。最初の行を削除し、2番目の行を 'if mySwitch.on {' –

+0

私の間違いだと私は最初にデフォルト値を設定しなければならないと考えました – RubberDucky4444

+0

ただviewDidLoad 'UISwitchOutlet.on = true'に追加してください –

答えて

1

下記を試してみてください。スイッチオン状態に設定していたため、あなたの値は常にオンになります。

func switchChanged(mySwitch: UISwitch) { 
    if mySwitch.isOn { 
     self.enterRoom.titleLabel?.text = "Enter Room" 
    } else { 
     self.enterRoom.titleLabel?.textAlignment = NSTextAlignment.Center 
     self.enterRoom.titleLabel?.text = "Create" 
    } 
} 
関連する問題