這個問題在這里已經有了答案: 在 lambda 中使用 return? (6 個回答) 2天前關閉。
假設我有一個已完成的布林值,它超出了附加到Button的onClickListener的范圍。
我可以在這個if塊中放入什么陳述句來跳過這個Button的整個代碼?(忽略一個凌亂的解決方案,比如將整個代碼放在else塊下)
confirmBttn.setOnClickListener {
if (completed) {
*stop or skip the entire button code*
}
*code*
}
我正在尋找一個優雅的解決方案來阻止那個聽眾的阻塞;無需停止整個程式,或使用整個 if/else 塊。類似于簡單地終止對該偵聽器函式的特定呼叫的函式。
uj5u.com熱心網友回復:
confirmBttn.setOnClickListener {
if (completed) return@setOnClickListener
*code*
}
uj5u.com熱心網友回復:
'return' 關鍵字將在此時停止當前范圍并阻止下面的代碼運行。程式的其他部分不受此影響。
confirmBttn.setOnClickListener {
if (completed) return
*code*
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/439057.html
上一篇:為什么沒有出現進度條?
下一篇:輸入文本、影像和按鈕卡在左上角
