参见英文答案 >
How to simulate a touch event in Android? 7个
我见过
this路线,
View.performClick();
但它没有显示实际按下按钮.我也尝试过this方法,
btn.setPressed(true);
btn.invalidate();
但是,它只显示按下按钮.我把它缩小到这个代码,它按下并发布,但没有点击.我错过了什么吗?我怎样才能完全点击,就像用户点击一样(monkeyrunner现在不是一个选项)
btn = (Button) findViewById(R.id.btn_box);
Handler handler = new Handler();
Runnable r = new Runnable() {
public void run() {
btn.setPressed(true);
btn.invalidate();
Handler handler1 = new Handler();
Runnable r1 = new Runnable() {
public void run() {
btn.setPressed(false);
btn.invalidate();
}
};
handler1.postDelayed(r1, 1000);
}
};
handler.postDelayed(r, 1000);
最佳答案 你的代码很好.只需添加btn.performClick();在invalidate()之后;
为了更好看,您可以减少handler1的时间.