2017-07-14 57 views
-3

我有很多按鈕的頁面,現在我什麼都想要做的就是,每個帳戶可以選擇一個按鈕,當他們選擇該按鈕,該按鈕將被禁用,並在帳戶登錄出來,再次打開應用程序,該按鈕應該仍然被禁用。如果有人知道答案,請幫助我。按鈕登錄後仍被禁用再次進入應用

謝謝。

我使用Android的工作室和我的登錄和使用SQLite註冊。

+0

和每個用戶都可以選擇一個鍵只有 –

+0

添加代碼,請代碼 –

+0

哪一部分?按鈕頁面代碼? –

回答

1

您應該在存儲按鈕可見性值的應用程序中使用共享首選項。點擊按鈕後,給你的首選項一些值,當註銷應用程序時,只需清除該共享首選項值,以便該按鈕不會再被禁用。

將這個代碼按鈕的點擊監聽器裏

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences((MY_PREFS_NAME, MODE_PRIVATE).edit(); 
SharedPreferences.Editor editor = preferences.edit(); 
editor.putString("value","buttondisabled"); 
editor.apply(); 

將這個代碼在你的活動

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); 
String name = preferences.getString("value", ""); 
if (value.equals("buttondisabled") 
{ 
yourbutton.setVisibilty(View.VISIBLE) 
} 

的onCreate方法和退出應用程序時,只需寫這幾行:

Editor editor = getSharedPreferences("MY_PREFS_NAME", Context.MODE_PRIVATE).edit(); 
editor.clear(); 
editor.commit(); 

這就是它:)

+0

可以顯示我的代碼? –

+0

查看編輯答案 – 2017-07-14 09:14:11

+0

這三個代碼寫在同一個java活動中? –

1

當您單擊註銷按鈕,請一個變量保存到SharePreference:

SharedPreferences sharedpreferences = getSharedPreferences("Name", Context.MODE_PRIVATE); 
    SharedPreferences.Editor editor = sharedpreferences.edit(); 
    editor.putBoolean("isLogout", true); 
    editor.commit(); 

現在,應用程序將保持變量isLogout =真。當走到那屏幕 下一次,你只需要得到這個變量來檢查:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
    \\the true which is second parameter is default value that you want if isLogout variable is null 
    if(prefs.getBoolean("isLogout", true)){ 
     button.disable 
    }; 
+0

這2個代碼寫在哪裏? –

+0

單擊按鈕內的第一個塊。 findViewbyId(ur按鈕) – GiaLe

+0

第二個塊後,第二個塊getDefaultSharedPreferences(this); (this)出現紅色錯誤,並禁用也出現紅色錯誤 –

相關問題