【发布时间】:2013-03-23 08:08:31
【问题描述】:
我看过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);
【问题讨论】:
-
尝试模拟触摸事件 (stackoverflow.com/a/7001356/1438733)。我会把它作为答案发布,但我不确定它的效果如何。