[英]Toggling iOS Bar Button identifier (Play/Pause) in Swift
我知道過去也曾問過類似的問題。 但是,我似乎無法執行一個簡單的動作,即將左欄按鈕從“播放”切換為“暫停”。
這是我的代碼:
@IBAction func toggleButton(sender: AnyObject) {
self.navigationItem.setLeftBarButtonItem(UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Pause, target: self, action: "someFakeAction"), animated: true)
}
func someFakeAction() {
println("Button pressed")
}
當我點擊“播放”按鈕時,會出現快速淡入淡出的動畫,然后“播放”按鈕返回。 不調用someFakeAction函數。 我究竟做錯了什么?
嘗試這個:
全局聲明UIBarButtonItem,以便以后可以訪問它。 讓我們稱之為playPauseButton
全局聲明一個布爾變量以跟蹤它是在播放還是在暫停,我們稱之為isPlaying
。
從viewDidLoad初始化isPlaying = true
,並使用具有pauseIt
操作的pauseIt
並將其設置為leftBarButtonItem
。
如果在pauseIt
方法init isPlaying = false
按下按鈕, playPauseButton
使用操作playIt
初始化playIt
並將其設置為leftBarButtonItem
。
在playIt
設置isPlaying = true
一次初始化的playPauseButton
用行動pauseIt
。
希望對您清楚。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.