Kotlin简化多个View绑定同一个Listener的写法
在Kotlin中,可以使用lambda表达式来简化绑定多个view到同一个listener的写法。以下是一个示例:\n\nkotlin\nval view1: View = findViewById(R.id.view1)\nval view2: View = findViewById(R.id.view2)\nval view3: View = findViewById(R.id.view3)\n\nval listener = View.OnClickListener { view ->\n when (view.id) {\n R.id.view1 -> {\n // 处理 view1 的点击事件\n }\n R.id.view2 -> {\n // 处理 view2 的点击事件\n }\n R.id.view3 -> {\n // 处理 view3 的点击事件\n }\n }\n}\n\nview1.setOnClickListener(listener)\nview2.setOnClickListener(listener)\nview3.setOnClickListener(listener)\n\n\n在上面的代码中,我们首先创建了一个View.OnClickListener的实例listener,然后使用lambda表达式来定义其onClick方法的实现。在onClick方法中,我们使用when语句来根据被点击的view的id来执行相应的操作。\n\n最后,我们通过调用setOnClickListener方法将listener绑定到每一个需要监听点击事件的view上。这样,当任意一个view被点击时,都会触发listener的onClick方法,并根据被点击的view的id来执行对应的操作。\n\n使用lambda表达式可以简化代码,使其更加简洁和易读。
原文地址: https://www.cveoy.top/t/topic/pCCp 著作权归作者所有。请勿转载和采集!