【问题标题】:How to check and skip an onClickListener? [duplicate]如何检查和跳过 onClickListener? [复制]
【发布时间】:2022-03-06 03:05:42
【问题描述】:

假设我有一个布尔值 completed,它超出了附加到 ButtononClickListener 范围。

我可以在这个 if 块中放入什么语句来跳过这个 Button 的整个代码? (忽略一个混乱的解决方案,比如将整个代码放在 else 块下)

confirmBttn.setOnClickListener {
    if (completed) {
        *stop or skip the entire button code*
    }

    *code*
}

我正在寻找一种优雅的解决方案来仅阻止该侦听器的阻塞;无需停止整个程序,或使用整个 if/else 块。类似于简单地终止对该侦听器函数的特定调用的函数。

【问题讨论】:

    标签: android-studio kotlin


    【解决方案1】:
    confirmBttn.setOnClickListener {
        if (completed) return@setOnClickListener
    
        *code*
    }
    

    【讨论】:

      【解决方案2】:

      'return' 关键字将在此时停止当前作用域并阻止下面的代码运行。程序的其他部分不受此影响。

      confirmBttn.setOnClickListener {
          if (completed) return
      
          *code*
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-16
        • 2010-11-23
        • 1970-01-01
        • 1970-01-01
        • 2019-10-28
        • 1970-01-01
        • 1970-01-01
        • 2010-10-06
        相关资源
        最近更新 更多