单击后禁用按钮2秒钟,然后恢复返回

Viv*_*lai 1 android android-layout

第一次单击重新发送按钮时,该按钮将禁用2秒钟。2秒钟后,该按钮将启用吗?我正在使用此代码

    btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            btn.setEnabled(false);
            btn.postDelayed(new Runnable() {
                public void run() {
                    btn.setEnabled(true);
                    Log.d(TAG,"resend1");
                }
            },1000);
        }
    });
Run Code Online (Sandbox Code Playgroud)

但是此代码无法正常工作。

Nil*_*hod 6

为此可以尝试使用Handler(import android.os.Handler;

  btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        btn.setEnabled(false);

     new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {
            // This method will be executed once the timer is over
                btn.setEnabled(true);
                Log.d(TAG,"resend1");

        }
    },2000);// set time as per your requirement 
    }
});
Run Code Online (Sandbox Code Playgroud)