2017-08-10 4 views
0

Je Pour sauvegarder et désactiver un bouton, après que j'utilise le bouton (la ligne de code ci-dessous):Android Studio - Comment puis-je enregistrer une valeur de bouton?

btn1.setEnabled(false); 

Je sais déjà que je dois utiliser SharedPreferences, mais je encore besoin d'aide avec le code. J'ai déjà beaucoup essayé mais sans succès. C'est mon code.

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(); 
    } 
} 

} 

Merci pour l'aide

+0

que vous essayez de faire le bouton désactivé chaque activité le temps commence? – Ali

+0

Copie possible de [Exemple de préférences partagées Android] (https://stackoverflow.com/questions/23024831/android-shared-preferences-example) –

+0

Où avez-vous des problèmes? Êtes-vous incapable d'enregistrer la valeur dans SharedPrefrences? Ou il y a quelque chose d'autre qui vous dérange? –

Répondre

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

Ça ne marche pas. – Strecki

+0

@ Strecki peut-être que j'ai compris mal, que cherchez-vous? – Curio

+0

Je pense que votre code n'est pas mauvais, mais quand je redémarre l'application le bouton "btn1" est encore cliquable. Le bouton btn1 doit être désactivé après la première utilisation également lorsque je redémarre l'application. C'est vraiment difficile. – Strecki