Kotlin || 如何在Android中区分视图ID和onClick()之类的switch语句?

Rav*_*aha 7 java android onclick kotlin

正如我们所知道的Android,我们正在使用的switch语句不同的view下面一样,我们用来implement View.OnClickListener获取onClick接口的方法来执行任何任务

 @Override
    public void onClick(View view) {

        switch (view.getId()) {
            case R.id.imgBack:

              ///DO SOME THING HERE

                break;

            case R.id.btnSubmit:

                ///DO SOME THING HERE

                break;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我正在使用的相同的东西Kotlin,通过实现 View.OnClickListener和获得如下的覆盖方法

class FeedBackActivity : AppCompatActivity(), View.OnClickListener {
    override fun onClick(p0: View?) {

 /// HOW CAN I USE THE SWITCH STATEMENT TO DISTINGUISH THE VIEW CLICK 

    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.feed_back_screen)

        imgBack.setOnClickListener(this)


    }

}
Run Code Online (Sandbox Code Playgroud)

在上面的代码我想用同样的方法switch来区分不同的视图点击.我怎样才能将其存档Kotlin

我知道还有另一种方法来执行Kotlin下面的点击监听器

MY_VIEW.setOnClickListener {
                Toast.makeText(this,"I have clicked",Toast.LENGTH_LONG).show()
            }
Run Code Online (Sandbox Code Playgroud)

但我想使用Kotin我们使用的相同界面Android.请帮助我缩短这个问题

Mib*_*bac 14

使用when表达式.它相当于Java switch.示例代码:

when(view.id) {
    R.id.imgBack -> {/* code goes here */}
    R.id.btnSubmit -> {/* you can omit the braces if there is only a single expression */}
}
Run Code Online (Sandbox Code Playgroud)