在android中的aplication中永久禁用按钮

时间:2016-05-11 06:56:11

标签: android button

实际上我有3个按钮。用户应点击任意一个按钮,然后所有3个按钮应在整个应用程序中永久禁用(当我们关闭并打开应用程序时,按钮应处于禁用状态)。如何实现这一目标?

提前致谢。

4 个答案:

答案 0 :(得分:1)

在SharePreferences中定义行为:

例如在onResume

中使用它
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
boolean enabled = pref.getBoolean("isEnabled",true);
myButton.setEnabled(enabled);

在按钮的onClick事件中执行此操作:

SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
pref.edit().putBoolean("isEnabled",false).commit();
myButton.setEnabled(false);

答案 1 :(得分:0)

您需要在共享偏好中保存按钮状态,并根据您在活动代码中启用/禁用它所需的条件。

if(stateofbuttonfromprefs) {
    button.setEnabled(false);
} else {
    button.setEnabled(true);
}

答案 2 :(得分:0)

您可以将 SharedPreference 用于您的目的。有关更多信息,请参阅this

  

在onCreate方法之前声明SharedPreference

SharedPreferences stateButton;
SharedPreferences.Editor bEditor;
  

在onCreate()

上初始化它
stateButton= getApplicationContext().getSharedPreferences("Button_State", 0);
bEditor = stateButton.edit();
  

在您的活动中添加这两种方法

public void setBState(boolean e) {
    bEditor.putBoolean("btn_state", e);
    bEditor.commit();
}

public boolean getButState(){
    return stateButton.getBoolean("btn_state", true);
}
  

调用此方法来了解您的按钮状态调用

but.setEnabled(getBState());
  

当您需要禁用该按钮时,请使用

setBState(false);

答案 3 :(得分:0)

  

点击按钮

button_login.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); 
            prefs.edit().putBoolean("btn_click", true).commit();
        }
    });
  

在Activity OnCreate方法

Boolean btnClick= prefs.getBoolean("btn_click", false);
if(btnClick){
     //Disable Button
}else{
     //Enable Button
}