Android禁用按钮不起作用

时间:2018-07-18 21:00:07

标签: android android-button

我正在尝试禁用onsucceed()方法上的按钮。但是我尝试了所有可能的选项,例如button.setVisibility()button.setEnabled(),但没有任何效果。根本原因可能是什么?

这是我的代码:

 if(device1notConnected) {
      scanneddevice1.setOnClickListener(new View.OnClickListener() {
         @Override
            public void onClick(final View v) {
                if(device1notConnected==false)
                     scanneddevice1.setClickable(false);

           device1.connect(new DeviceConnectCallback() {
              @Override
                 public void onSucceed(Device device1, DeviceConnectResult result) {
                                device1notConnected = false;
                                Log.d(TAG, "The connection is successful");
                                Toast.makeText(getApplicationContext(), "The connection is successful", Toast.LENGTH_SHORT).show();
                                // The connection is successful...
                            }

                            @Override
                            public void onError(Device device, DeviceCallbackException e) {
                                Log.d(TAG,"error");
                            }
                        });
                    }
                });
            }

1 个答案:

答案 0 :(得分:0)

尝试立即在onClick方法中调用“ setEnabled(false)”(完全删除device1notConnected布尔值和“ if”检查项)。在“ onError”中,调用“ setEnabled(true)”,以便用户可以重试。如果onError在后台线程上,则使用按钮上的post方法进行调用,并提供一个执行'setEnabled(true)'的可运行对象