如何自定义android中按下的长/延迟按钮的时间间隔

时间:2013-05-06 06:55:09

标签: android

我正在创建一个应用程序,其中有一个按钮来执行操作,但我希望在用户长按按钮时执行操作。由于Google提供了长按时间长度appx .5秒,但我想自定义此持续时间。请帮忙......

1 个答案:

答案 0 :(得分:7)

您可以尝试Touch Listener来执行此操作。

尝试:

Handler handler = new Handler();
    b.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View arg0, MotionEvent arg1) {
            switch (arg1.getAction()) {
            case MotionEvent.ACTION_DOWN:
                handler.postDelayed(run, 5000/* OR the amount of time you want */);
                break;

            case MotionEvent.ACTION_CANCEL:
                handler.removeCallbacks(run);
                break;

            case MotionEvent.ACTION_UP:
                handler.removeCallbacks(run);
                break;

            }
            return true;
        }
    });

b是您要长按的view

Runnable run如下

Runnable run = new Runnable() {

    @Override
    public void run() {
        // Your code to run on long click

    }
};

希望它有帮助...:)