Fehler in AlertDialog an User melden.

  • 8 Antworten
  • Neuester Beitrag
Diskutiere Fehler in AlertDialog an User melden. im Android App Entwicklung im Bereich Betriebssysteme & Apps.
M

muck

Ambitioniertes Mitglied
Ich rufe aus dem Optionsmenü einen CreateDialog() auf:
Code:
...
CreateDialog();
alert.show();
...
In CreateDialog() erstelle ich einen AlertDialog, der dann anschleißend mit alert.show(); angezeigt wird.
Code:
public void CreateDialog () {
  final AlertDialog.Builder builder = new AlertDialog.Builder(this);
  final EditText inputBox = new EditText(this);
  builder.setTitle(getString(R.string.txt_addList));
  builder.setView(inputBox);
 
  builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
   public void onClick(DialogInterface dialog, int buttonID) {
    [COLOR=red]try {[/COLOR]
[COLOR=red] dbConn.execSQL("INSERT INTO shoppinglists (name) VALUES ('" + inputBox.getText().toString().trim() + "')");[/COLOR]
[COLOR=red] listView = showShoppingLists();[/COLOR]
[COLOR=red]} [/COLOR]
[COLOR=red]catch (SQLException e) {[/COLOR]
[COLOR=red]    String test = e.getMessage();[/COLOR]
[COLOR=red]    System.out.println(test);[/COLOR]
[COLOR=red]}[/COLOR]
   }
  });
 
  builder.setNegativeButton(getString(R.string.txt_cancelButton), new DialogInterface.OnClickListener() {
   public void onClick(DialogInterface dialog, int buttonID) {
    dialog.cancel();
   }
  });
 
  alert = builder.create();
}
Nun zu meinem Problem: (rote Markiert)
Wenn das INSERT in die Datenbank fehlschlägt, würde ich das dem User gerne mitteilen. Ich habe nur im Moment überhaupt keine Idee wie ich das machen soll.

Über einen Tipp zum Lösungsansatz wäre ich dankbar.

Gruß
 
F

FireRider

Neues Mitglied
Vielleicht mit einem Toast?
 
M

muck

Ambitioniertes Mitglied
Nein, das geht innerhalb des Dialoges nicht.
 
S

swordi

Lexikon
warum soll das nicht gehen?
 
Fr4gg0r

Fr4gg0r

App-Anbieter (Werbung)
Du kannst natürlich auch unterhalb des EditTextes noch ein TextFeld einbauen, in dem du Feedback reinschreibst..
 
klausa2

klausa2

Erfahrenes Mitglied
Du kannst durchaus innerhalb des Dialogs einen Alert anzeigen. Aber: Wenn der User den bestätigt, z.B. mit OK, dann werden automatisch beide Dialoge geschlossen.
 
M

muck

Ambitioniertes Mitglied
@swordi
Wenn ich im catch einen Toast aufrufen will kommt ne FM.

@klausa2
Daran hatte ich schonmal gedacht. Wenn allerdings beide Dialoge geschlossen werden, kann ich auch im catch ein flag setzen, dann geht der Dialog zu, ich werte das flag aus, bring ne Meldung und rufe den Dialog mit der vorherigen Eingabe wieder auf.

oder
@Fr4gg0r
Mal testen ob das "auffällig" genug ist. Darauf bin ich noch gar nicht gekommen :D

Dankschöön an alle.
 
garak

garak

Ehrenmitglied
Du kannst dir doch auch deinen eigenen Fehler-Dialog bauen:

Code:
import android.app.Activity;
import android.app.AlertDialog;

public class ErrorDialog {

  public ErrorDialog(Activity owner, String message, DialogListener listener) {
    AlertDialog dialog = new AlertDialog.Builder(owner).create();
    dialog.setIcon(R.drawable.error);
    dialog.setTitle(R.string.error);
    dialog.setMessage(message);

    dialog.setButton(AlertDialog.BUTTON_POSITIVE, owner.getString(R.string.ok), listener);

    dialog.show();

  }

}
Damit habe ich so meine Standard-Dialoge geschaffen.
 
M

muck

Ambitioniertes Mitglied
So, hab ne Lösung gefunden. Ist zwar ein bisschen aufwändiger aber man hat alles im "Griff" :thumbsup:

Hab ein neues Activity erstellt und mit
android:theme="@android:style/Theme.Dialog">
sieht es dem Dialog schonmal sehr ähnlich.
Inputbox, Textfeld und zwei Buttons rein, Code drum rum, noch ein bischen aufhüpschen und fertig.
 
Ähnliche Themen - Fehler in AlertDialog an User melden. Antworten Datum
4