android button 双击操作如何监听

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android button 双击操作如何监听相关的知识,希望对你有一定的参考价值。

android里面没有监听双击事件的操作,如果想实现的话我的建议是在
private int count = 0;
button.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
count++;
if(cout == 2)
.监听处理.
count = 0;


) ;
这样做的话会导致一个问题,那就是用户在单击一下是没什么操作 当用户很长时间没单击之后再单击一次仍然会执行相关操作,这样给用户的体验很不好,如想改善最好是通过一个线程来监控count让count在一定时间内刷新为0如下
private int count = 0;
button.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
count++;
if(cout == 2)
.监听处理.
count = 0;


) ;

new Thread(new Runnable()
public void run()
try
Thread.sleep(500);
count = 0;
catch (InterruptedException e)
e.printStackTrace();

).start();

这样做的话有可能的情况是当用户在500ms末单击一下在另外一个500ms初单击一下这样是不会触发相应的事件的,这是这个程序的本身最大的缺陷

参考资料:·

参考技术A android里面没有监听双击事件的操作,如果想实现的话我的建议是在
private int count = 0;
button.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
count++;
if(cout == 2)
.监听处理.
count = 0;


) ;
这样做的话会导致一个问题,那就是用户在单击一下是没什么操作 当用户很长时间没单击之后再单击一次仍然会执行相关操作,这样给用户的体验很不好,如想改善最好是通过一个线程来监控count让count在一定时间内刷新为0如下
private int count = 0;
button.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
count++;
if(cout == 2)
.监听处理.
count = 0;


) ;

new Thread(new Runnable()
public void run()
try
Thread.sleep(500);
count = 0;
catch (InterruptedException e)
e.printStackTrace();

).start();

这样做的话有可能的情况是当用户在500ms末单击一下在另外一个500ms初单击一下这样是不会触发相应的事件的,这是这个程序的本身最大的缺陷。
参考技术B android 里面只有点击、长按、触摸等事件监听,没有双击。 如果需要双击可以在触摸事件监听中的ACTION_DOWN和ACTION_UP中综合来判断。 参考技术C Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
....监听处理....

);

这个回答正解。这个问题。。。。。-_-!

Android Button监听的方式

Android Button的几种监听方式

1、一个Button对应一个监听

1)xml文件中绑定监听

<Button
        android:id="@+id/btn_test"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="test listener"
        android:onClick="test"
        />

在对应文件中实现该方法

public void test(View v){
        // to do something
        Toast.makeText(this, "xml绑定监听响应", Toast.LENGTH_SHORT).show();
}

2)

Button btnTest = (Button) findViewById(R.id.btn_test);
btnTest.setOnClickListener(new OnClickListener() {
    
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
                
    }
});

2、多个Button对应一个监听

1)

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
     Button btnTest = (Button) findViewById(R.id.btn_test);
        Button btnDeploy = (Button) findViewById(R.id.btn_deploy);
        btnTest.setOnClickListener(listener);
        btnDeploy.setOnClickListener(listener);
  }
    
    OnClickListener listener = new OnClickListener() {
        
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.btn_test:
                
                break;
            case R.id.btn_deploy:
                
                break;
            default:
                break;
            }
            
        }
    };
}

2)

public class MainActivity extends Activity implements OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
     Button btnTest = (Button) findViewById(R.id.btn_test);
        Button btnDeploy = (Button) findViewById(R.id.btn_deploy);
        btnTest.setOnClickListener(this);
        btnDeploy.setOnClickListener(this);
        
    }
    
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {
        case R.id.btn_test:
            
            break;
        case R.id.btn_deploy:
            
            break;
        default:
            break;
        }
    }
}

 

以上是关于android button 双击操作如何监听的主要内容,如果未能解决你的问题,请参考以下文章

Android:单击返回和双击退出应用的监听实现

Android:单击返回和双击退出应用的监听实现

android 中怎么为button设置监听

Android Button监听的方式

Android中Button的五种监听事件

在android中怎样给整个页面设置监听事件