如何按下按钮直到方法结束

时间:2013-12-16 14:38:09

标签: java android

我需要按住一个按钮,直到方法结束,因为用户在按下按钮时不能再次按下。

我试过这个:

on create:

Button btnSend= (Button) findViewById(R.id.btnSend);
btnSend.setOnClickListener(onClickbtnSend);

方法:

Button.OnClickListener onClickbtnSend= new Button.OnClickListener() {
   @Override
   public void onClick(View v){
     try{
         v.setPressed(true);

         //do something ......     

     } catch(Exception e){
       e.printStackTrace();
     }
   v.setPressed(false);
}
有人有想法吗?感谢

2 个答案:

答案 0 :(得分:1)

您可能希望使用ToggleButton,因为您的按钮似乎有两种状态(忙或不忙)。

答案 1 :(得分:0)

我找到了这个解决方案:

在创建之前:

private boolean pressionado = false;

方法:

Button.OnClickListener onClickbtnSend= new Button.OnClickListener() {
  @Override
  public void onClick(View v){

    if(pressionado){
      return;
    }

    pressionado = true;

    try{
        //do something background in task

    } catch(Exception e){
       e.printStackTrace();
        pressionado = false;
    }
}

我不知道这是否是更好的解决方案,但对我有用。