Skip to content

Instantly share code, notes, and snippets.

@kosiara
Created September 20, 2015 21:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kosiara/c090dcd684ec6fb2ac42 to your computer and use it in GitHub Desktop.
Save kosiara/c090dcd684ec6fb2ac42 to your computer and use it in GitHub Desktop.
multiple OnClickListeners in one Android control (java class)
import android.annotation.TargetApi;
import android.content.Context;
import android.os.Build;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ImageButton;
/**
* Created by kosiara on 9/20/15.
*/
public class DoubleClickListenerImageButton extends ImageButton {
View.OnClickListener mSecondOnClickListener;
public DoubleClickListenerImageButton(Context context) {
super(context);
}
public DoubleClickListenerImageButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public DoubleClickListenerImageButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public DoubleClickListenerImageButton(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
public void setSecondOnClickListener(View.OnClickListener l) {
mSecondOnClickListener = l;
}
@Override
public boolean performClick() {
if (mSecondOnClickListener != null)
mSecondOnClickListener.onClick(this);
return super.performClick();
}
@Override
public boolean performContextClick() {
if (mSecondOnClickListener != null)
mSecondOnClickListener.onClick(this);
return super.performContextClick();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment