2

如果按下超过两秒钟,我需要更改按钮的颜色。

4

2 回答 2

1

您必须使用 onTouch() 方法,它允许检查诸如 ACTION_UP 和 ACTION_DOWN 之类的操作 将其分配给 onCreate() 中的按钮

btn.setOnTouchListener(this); 

然后在 onTouch()

@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
    switch ( arg1.getAction() ) {
    case MotionEvent.ACTION_DOWN: 
        //Start measuring time and when action = up calculate difference in time
    }

    return false;
}
于 2013-02-23T22:31:15.187 回答
0

我不确定长按是多长时间,但如果您不需要精确到两秒,我会为该按钮注册一个 onLongClickListener。然后让监听器更新颜色。

于 2013-02-23T22:34:37.920 回答