android:每次单击按钮时调用一个方法
我想创建一个类,它扩展Button并实现一个方法,当单击按钮时,该方法总是被调用。但我还是希望它能被调用。 我的想法是在调用构造函数或setOnClickListener时将OnClickListener保存到私有成员中,然后将OnClickListener设置为我自己的OnClickListener。然后,这个将调用我的方法和保存的onclick侦听器。 但我不知道如何获得OnClickListenr,我只知道如何设置它。 有办法进入吗?android:每次单击按钮时调用一个方法,android,button,Android,Button,我想创建一个类,它扩展Button并实现一个方法,当单击按钮时,该方法总是被调用。但我还是希望它能被调用。 我的想法是在调用构造函数或setOnClickListener时将OnClickListener保存到私有成员中,然后将OnClickListener设置为我自己的OnClickListener。然后,这个将调用我的方法和保存的onclick侦听器。 但我不知道如何获得OnClickListenr,我只知道如何设置它。 有办法进入吗? 还是你有更好的主意?(无论是在OnClickListe
还是你有更好的主意?(无论是在OnClickListener之前还是之后调用我的方法都无关紧要)我想您可以这样做:
public class OnceClickedTwiceRunButton extends Button{
public OnceClickedTwiceRunButton(Context context) {
super(context);
}
public OnceClickedTwiceRunButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public OnceClickedTwiceRunButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
private OnClickListener extraClickMethod;
@Override
public void setOnClickListener(OnClickListener newListener)
{
super.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
DefaultClickMethod(v);
if(extraClickMethod != null)
{
extraClickMethod.onClick(v);
}
}
});
extraClickMethod = newListener;
}
private void DefaultClickMethod(View v)
{
//TODO
}
}
看看下面的例子,那又怎样?这只显示如何设置OnClickListener,而不是如何获取它。。。