1

我有一个显示进度对话框的按钮,在进度对话框结束时,会显示一个 toast。我希望在 UI 上看到进度对话框和 toast 时禁用按钮。即吐司消失后,我希望再次启用我的按钮

任何人都可以建议做什么

4

2 回答 2

1

显示 toast 后,将可单击按钮设置为 false,然后启动此计时器任务。Timer 类的方法,即 schedule(),是在提供的时间之后执行的。在这种情况下,我将时间作为 Toast.LENGTH _SHORT

 final Handler handler = new Handler();
   Timer time = new Timer();
   time.schedule(new TimerTask() {
      @Override
      public void run() {
      handler.post(new Runnable() {
        @Override
        public void run() {
                     your_button.setClickable(true);
                  }
             });
         }
    },Toast.LENGTH_SHORT);  //// If your toast is for length short.
于 2013-08-12T12:17:37.230 回答
0

在进度对话框开始之前放置以下代码

Button myBtn=findViewById(R.id.button1);
myBtn.setVisibility(View.INVISIBLE);
//myBtn.setEnabled(false);

调用 Toast.makeText() 后,输入以下代码:

myBtn.setVisibility(View.VISIBLE);
//myBtn.setEnabled(true);

请注意,setVisibility 将使按钮可见/不可见,setEnabled(false) 将使您的按钮变为不可 clcikable mde。

于 2013-08-12T10:36:43.387 回答