Promoting (Teil 7): Promotion Dialog - Eine Android App für die Steem Blockchain - Teil #28

in #development7 years ago

Nachdem ich im letzten Teil den Button zum Starten einer Promotion ins Postmenü eingefügt habe, möchte ich in diesem Teil einen Dialog erstellen, in dem der Benutzer die Promotion konfigurieren kann. Diesen Dialog möchte ich in diesem Teil erstellen und den Button zum Aufrufen des Dialogs mit dem dazu nötigen Code versehen.

Schritt 1: Das Dialog Layout

Als erstes muss das Layout für den Dialog erstellt werden. Dieses soll folgende Komponenten beinhalten: Eine Anzeige der verfügbaren Steem Dollars, ein Eingabefeld zum bestimmen der Steem Dollar Zahl mit der Promoted wird und ein Feld für die daraus resultierende Promotion. Die darunter befindlichen Buttons zum Absenden der Promotion, bzw. zum Abbrechen der Promotion werden später über den Dialog hinzugefügt. Diese Layout-Datei sieht so aus:
dialog_layout.PNG

Schritt 2: Die OpenDialog Methode

Als nächstes erstelle ich die Methode, die den Dialog öffnet. Sie wird über das im letzten Teil erstellte Aktionsmenü aufgerufen. Da der Dialog ein AlertDialog werden soll, behelfe ich mir der Klasse AlertDialog.Builder. Mithilfe dieser Builder-Klasse lässt sich dem AlertDialog der Titel setzten, das Layout hinzufügen, die Buttons ergänzen, etc. Es sind bis zu drei Buttons möglich: Ein "Negativ" Button (z.B. für "Nein"), ein "Neutral" Button (z.B. für "Abbrechen") und ein "Positive" Button (z.B. für "Ja"). Da ich für meinen Dialog aber nur zwei Buttons brauche, verwende ich als Positive Button den Promote Button und als Negative Button den Abbrechen Button. Diese Informationen müssen nach und nach dem DialogBuilder zugefügt werden, bevor abschließend über die Create Methode der fertige Dialog erstellt wird. Dieser kann dann durch einen Aufruf der "show" Methode eingeblendet werden. Diese Methode sieht so aus:
openpromodialog.PNG
Diese Methode wird dann im Switch aufgerufen, der für das Postmenü oben rechts zuständig ist. Damit wird der Dialog nun schon angezeigt, im nächsten Teil möchte ich ihn dann mit Leben füllen, d.h. die Werte dem aktuellen Kontostand entsprechend einfügen und eine Eingabeüberprüfung schon direkt beim Eintippen einer Zahl vornehemen. Der heutige Post ist leider etwas kürzer, da ich wenig Zeit hatte, aber dennoch einen Post machen wollte. Ab morgen gibt es dann auch wieder etwas längere Posts.


Wenn dir der Post gefallen hat und du mich und dieses Projekt unterstützen möchtest, dann tue dies durch einen Upvote!