Themen-Toastnachrichten mit dem Android SDK
Eine sehr praktische Funktion des Android UI-Kits ist die Toast-Nachrichtenklasse. Eine Toastnachricht ist der ideale Weg, um den Benutzer über das Geschehen zu informieren, ohne die Benutzererfahrung mit etwas so Aufdringlichem wie einem Dialog zu unterbrechen. Angenommen, der Benutzer hat die Schaltfläche Speichern gedrückt. Eine Toastnachricht ist der perfekte Weg, um dem Benutzer eine warme und unscharfe Note zu geben, wenn der Speichervorgang erfolgreich abgeschlossen wurde.
Das einzige Problem ist, dass die Toastnachricht normalerweise auf Geräteebene thematisiert wird. Dies bedeutet, dass die Toastnachrichten wahrscheinlich dunkelgrau und weiß sind, wenn der Benutzer vor Honeycomb eine Android-Version ausführt. In späteren Versionen von Android sind die Toastnachrichten wahrscheinlich hellblau und weiß. In beiden Fällen besteht je nach Farbschema Ihrer Android-Anwendung eine gute Chance, dass Sie einen Schandfleck bekommen.
Zum Glück gibt es Hoffnung. Die Android-Plattform ist bekannt für ihre Flexibilität und die Toastklasse ist keine Ausnahme. Dieses Tutorial zeigt Ihnen alles, was Sie wissen müssen, um Ihre eigenen Toastnachrichten zu erstellen. Sie können meinem Schritt-für-Schritt-Tutorial folgen oder das gesamte Projekt herunterladen und direkt in Eclipse importieren.
1. Erstellen Sie mit Eclipse ein neues Android-Projekt. Zielversion 1.6 oder höher des Betriebssystems. Benennen Sie die Startdatei in Main.java und das entsprechende Layout in main.xml um.
2. Da ich ein Fan von gegrilltem Käse bin, werde ich meine Toastbotschaft mit einem großen Stück Cheddar schmücken. Im Ressourcenordner habe ich ein neues Verzeichnis namens / drawable erstellt. Hier habe ich das benutzerdefinierte Bild platziert, das ich in meinen Dialogen verwenden möchte, käse.png.
3. Da ich sicherstellen möchte, dass meine benutzerdefinierte Toastnachricht nicht mit der Standardsystemnachricht verwechselt wird, erstelle ich einen leuchtend roten Verlauf, der als Hintergrund für mein Layout dient. Fügen Sie im Verzeichnis / res einen neuen Ordner hinzu und nennen Sie ihn / xml. In diesem neuen Ordner erstelle ich eine Datei mit dem Namen round_rect.xml.
round_rect.xml
"1.0" encoding = "UTF-8" ?>
xmlns: android = "http://schemas.android.com/apk/res/android"android: shape = "rechteck" > android: startColor = "# ffff0000"android: endColor = "# ff480000"android: angle = "270" /> android: bottomRightRadius = "15dp"android: bottomLeftRadius = "15dp"android: topLeftRadius = "15dp"android: topRightRadius = "15dp" />4. Bevor wir mit dem Schreiben von Java-Code beginnen können, müssen wir noch unsere Hauptanwendung und den benutzerdefinierten Toast auslegen. Beide Dateien werden im Verzeichnis / res / layout abgelegt.
custom_toast.xml
"1.0" encoding = "utf-8" ?>"http://schemas.android.com/apk/res/android" android: id = "@ + id / toast_layout"android: orientierung = "vertikal"android: layout_width = "wrap_content"android: layout_height = "wrap_content"android: background = "@ xml / round_rect"android: layout_margin = "25dip" > android: layout_margin = "5dip"android: orientierung = "horizontal"android: layout_width = "wrap_content"android: layout_height = "wrap_content" > android: layout_width = "wrap_content"android: layout_height = "wrap_content"android: src = "@ drawable /käse" /> android: orientierung = "vertikal"android: layout_width = "fill_parent"android: layout_height = "fill_parent"android: schwerkraft = "zentrum" > android: paddingLeft = "10dip"android: layout_width = "fill_parent"android: layout_height = "fill_parent"android: id = "@ + id / toast_text_1"android: textColor = "#ffffff"android: textSize = "14sp"android: textStyle = "fett"android: schwerkraft = "zentrum" />main.xml
"http://schemas.android.com/apk/res/android" android: layout_width = "fill_parent"android: layout_height = "fill_parent"android: orientierung = "vertikal"android: background = "# 000000" > android: layout_width = "wrap_content"android: layout_height = "wrap_content"android: textSize = "16sp"android: textColor = "#ffffff"android: text = "Benutzerdefinierte Toast-Demonstration"android: layout_gravity = "center"android: layout_margin = "15dip" />