我的问题类似于发布的问题here。我希望Android按钮保持按下状态。我无法按照提供的解决方案,因为当通过键盘或轨迹球按下按钮时将调用onClick
,我需要处理它。
我尝试在button.setPressed(true);
回调中设置onClick
,但似乎无效。有没有办法做到这一点?
答案 0 :(得分:2)
试试这个它会起作用......
singIn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction()==MotionEvent.ACTION_DOWN) return true;
if(event.getAction()!=MotionEvent.ACTION_UP) return false;
//DO SOMETHING!!
singIn.setPressed(true);
return true;
}
});
答案 1 :(得分:1)
尝试向按钮发送触摸事件,如下所示:
MotionEvent down = MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, 0, 0, 0);
yourButton.dispatchTouchEvent(down);