Dialog nicht öffnen falls Datei vorhanden ist

  • Antworten:1
  • Bentwortet
Jasko Del
  • Forum-Beiträge: 11

31.08.2015, 12:03:00 via Website

Hallo Zusammen,

ich habe einen Dialog erstellt der bei einer NEU Registrierung aufpoppen soll.
In den Dialog geht es darum ob der User seine Daten vervollständigen möchte oder erstmal lieber nicht.
Natürlich will ich das der Dialog nicht mehr angezeigt wird sobald der User seine Daten vervollständigt hat und sich erneut einloggt.

//AlertDialog zum erstellen der ProfilEinstellungen
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this);
dialogBuilder.setTitle("Dialog Title")
.setIcon(android.R.drawable.ic_dialog_info)
.setMessage("Vervolständige dein Profil um den vollen Service zu nutzen")
.setNegativeButton("Überspringen", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent i2 = new Intent(MainActivity.this, MainActivity.class);
startActivity(i2);
}
})
.setPositiveButton("Vervollständigen", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent i3 = new Intent(MainActivity.this, ProfilEinstellungen.class);
startActivity(i3);
}
})
.setCancelable(false)
.show();

Meine erster Ansatz war es mit If/else zu arbeiten da ja bei SharedPrefrence eine Datei erstellt wird.
Also:
If = datei vorhanden dann nicht anzeigen else = zeig den Dialog an.

Kriege das aber nicht so ganz hin.

Freue mich über Hilfe

Danke

Antworten
Gelöschter Account
  • Forum-Beiträge: 336

31.08.2015, 14:41:59 via Website

Am besten machst du das mit mehreren Bedingen in einer if Anweisung. Sobald eine dieser zutrifft wird die if Anweisung ausgeführt. Das "||" ist ein logical operator:

if(mSharedPreferences.getString("Key1", null) == null || mSharedPreferences.getBoolean("Key2", false) == false    || mSharedPreferences.getFloat("Key3", 0) == 0) { //Zeige Dialog }

Edit:
Hab gerade gesehen, dass die SharedPreferences class eine "contains()" Methode hat. Dann sollte das ganze am besten so aussehen:

if(!mSharedPreferences.contains("Key1") || !mSharedPreferences.contains("Key2") || !mSharedPreferences.contains("Key3") { //Zeige Dialog }

— geändert am 31.08.2015, 14:52:55

Android Developer

Jasko Del

Antworten