Android 如何执行一按下按钮就运行的代码?
在Android中,当按下按钮时,您可以在用户抬起手指后使用setOnClickListener执行代码。如何在按下按钮后立即执行代码?使用Android 如何执行一按下按钮就运行的代码?,android,Android,在Android中,当按下按钮时,您可以在用户抬起手指后使用setOnClickListener执行代码。如何在按下按钮后立即执行代码?使用setOnTouchListener方法: button.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method s
setOnTouchListener
方法:
button.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if(event.getAction()==MotionEvent.ACTION_DOWN)
//do what you wish to
return false;
}
}))
您可以尝试以下方法:
public class DownTouchButton extends Button implements OnTouchListener {
private DownTouchButton(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
private DownTouchButton(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
private DownTouchButton(Context context) {
super(context);
init();
}
private void init() {
setOnTouchListener(this);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch(action){
case MotionEvent.ACTION_DOWN:
Log.d("YourApp", "A down event");
break;
default:
break;
}
return false;
}
}
然后在xml中:
<com.your.package.DownTouchButton
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Down Press Me!"
/>
创建一个类,该类扩展
视图
并覆盖onTouchEvent
,然后检查动作事件
<com.your.package.DownTouchButton
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Down Press Me!"
/>