我是 Android 新手,一般都是事件驱动的代码。我没有在我的 Activity 中嵌入大量匿名事件侦听器类来处理 onClick 事件等,而是定义了单独的类来保持代码整洁。然后我像这样使用它们
myButton.setOnClickListener(new MyEventListener());
所以,当“myButton”被点击时,MyEventListener 的 onClick 方法会做一些事情。
我想知道最佳实践
a)从事件监听器访问我的活动中的东西。例如更改标签的文本。onClick 事件需要一个视图,但这是已单击按钮的视图,因此如果标签不是我的按钮的子级,我不能使用 findViewById 来获取它的句柄。我已经修改了构造函数以传递对标签的引用,以便事件有一个句柄,但不确定这是否是最优雅的方式。
b) 传回信息,例如当我的事件触发时,我可能想要禁用一些 EditText 字段。我认为正确的方法可能是从我的事件侦听器中分派另一个事件,Activity 侦听该事件,当它看到该事件时,禁用相关字段。这是在Android中做到这一点的方式吗?
希望有人可以提供帮助,非常感谢。
谢谢