我的问题纯属一般。为什么Java会强迫您编写需要附加到对象的复杂处理程序,以实现简单的点击操作?
那么,为什么我需要写:
public class ClickMe implements OnClickListener {
void someMethod() {
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
....
}
}
而不是
class myButton extends Button {
@override void onClick() {
// do something special
}
然后在我的布局上使用该按钮?
我确信这个设计有充分的理由,我无法想到它们!
答案 0 :(得分:1)
我对你的意思有点困惑,但将onClickListeners附加到按钮上相当容易。
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Do stuff when clicked
}
});
或者您可以在您的活动或片段中实施View.OnClickListener
,并将onClickListener
设置为this
。