从意图返回后禁用按钮



下午,我只需要调用一个意向,返回后禁用按钮X秒。我尝试了以下的变体,它们要么立即禁用按钮,然后启用,要么不做我需要的完全停止。

Guarding.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Guarding.setEnabled(false);
SharedPref.write(SharedPref.SCANTYPE,"GUARDING");
Intent intent = new Intent(Menu.this, CmxScanner.class);
startActivity(intent);
Guarding.postDelayed(new Runnable() {
public void run() {
Guarding.setEnabled(true);
//Log.d(TAG,"resend1");
}
},10000);
}
});

因此,在第一次进入菜单时,我有一个启用的按钮,点击后必须调用intent,返回后再次禁用按钮X秒。在启用并允许意向的第二次请求之前

您可以注册您的调用活动以获得结果,如Android文档中所述。然后在结果回调中,您只需在10秒后启用按钮:

ActivityResultLauncher<String> mGetContent = registerForActivityResult(new GetContent(),
new ActivityResultCallback<Uri>() {
@Override
public void onActivityResult(Uri uri) {
Guarding.postDelayed(new Runnable() {
public void run() {
Guarding.setEnabled(true);
}
}, 10000);
}
}
});

最新更新