2017-08-10 204 views
0

我喜歡保存並關閉按鈕,之後我用的按鈕(下面的代碼行):Android Studio - 我如何保存按鈕值?

btn1.setEnabled(false); 

我已經知道我必須使用SharedPreferences,但我仍然需要與代碼幫助。我已經嘗試了很多,但沒有成功。那是我的代碼。

public class Pass extends AppCompatActivity implements View.OnClickListener { 

private Button btn1; 
private EditText text1; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_pass); 

    btn1 = (Button) findViewById(R.id.button); 
    btn1.setOnClickListener(this); 

    text1 = (EditText) findViewById(R.id.editText); 
    text1.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); 



} 


public void onClick (View view){ 


    if (text1.getText().toString().equals("Pass)){ 
     AlertDialog ad = new AlertDialog.Builder(this).create(); 
     ad.setMessage("Super"); 
     ad.show(); 
     Intent intent = new Intent(this,Popup.class); 
     startActivity(intent); 

     btn1.setEnabled(false); 

    }else{ 
     String message = "Leider falsch"; 
     Toast.makeText(this,message, Toast.LENGTH_LONG).show(); 
    } 
} 

} 

感謝您的幫助

+0

你試圖讓每禁用活動開始時間的按鈕? – Ali

+0

[Android共享偏好示例]的可能重複(https://stackoverflow.com/questions/23024831/android-shared-preferences-example) –

+0

你在哪裏有問題?您無法將值保存在SharedPrefrences中嗎?或者還有別的東西在困擾着你? –

回答

0
public class Pass extends AppCompatActivity implements View.OnClickListener 
{ 

private Button btn1; 
private EditText text1; 
private SharedPreferences sharefPref; 
private SharedPreferences.Editor editor; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_pass); 

btn1 = (Button) findViewById(R.id.button); 
btn1.setOnClickListener(this); 

text1 = (EditText) findViewById(R.id.editText); 
text1.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); 
sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); 
editor = sharedPref.edit(); 
} 


public void onClick (View view){ 

if(sharedPref.getBoolean("YourKey"),true) 
{ 
editor.putBoolean("YourKey",false); 
editor.commit(); 

if (text1.getText().toString().equals("Pass)){ 
    AlertDialog ad = new AlertDialog.Builder(this).create(); 
    ad.setMessage("Super"); 
    ad.show(); 
    Intent intent = new Intent(this,Popup.class); 
    startActivity(intent); 

}else{ 
    String message = "Leider falsch"; 
    Toast.makeText(this,message, Toast.LENGTH_LONG).show(); 
} 

} 
} 

} 
+0

它沒有工作。 – Strecki

+0

@Strecki也許我理解不好,你在找什麼? – Curio

+0

我認爲你的代碼不壞,但是當我重新啓動應用程序時,按鈕「btn1」仍然是可點擊的。按鈕btn1必須在第一次使用後禁用,當我重新啓動應用程序。這真的很棘手。 – Strecki