Als nächsten Schritt möchte ich mit dem Einstellungsmenü der App beginnen. Darin enthalten wird, wie bereits im letzten Teil angekündigt, auch die Anmeldung mit seinem Steem Account sein. Ich möchte verschiedene Varianten für die Anmeldung anbieten: Eine davon wird über SteemConnect laufen, eine andere wird mittels direkter Key-Eingabe erreicht. Letztere Variante kann zwar unter Umständen zu einem Sicherheitsrisiko werden, dem möchte ich aber durch eine verschlüsselte Speicherung und effektiven Schutz vor Missbrauch in der App entgegenwirken. Dazu kommen möchte ich aber erst, wenn es auch soweit ist, bevor man sich Anmelden kann, muss ein Menü dafür her.
Vorbereitung
Als erstes muss ein Layout für das Menü her. Ich möchte ein zweischichtiges Layout verwenden, d.h. dass der Nutzer beim öffnen des Einstellungsmenüs eine Übersicht über verschiedene Kategorien erhält und durch ein Tippen auf diese dann die dazugehörigen Einstellungen. Wichtig ist hierbei, dass die Einstellungen anders als Activities gestaltet werden. Statt mit Views lassen sich Einstellungsmenüs leichter mithilfe von sogenannten Preferences umsetzten. Zuerst erstelle ich daher eine Klasse, die von der Basis her einer Activity ähnelt, aber später noch von einer Activity eingebunden werden muss. Diese Klasse erbt von "PreferenceFragment" und erhält folgenden Code zu Beginn:
Als nächstes wird noch eine XML-Datei benötigt, welche die Preferences speichert. Diese wird aber NICHT im Layout Ordner, sondern im XML-Ordner erstellt. Wichtig ist hierbei, dass der Dateiname mit einem "pref_" oder einem "prefs_" beginnen sollte, da nur so die automatische Erkennung als Preferences Datei gewährleistet ist. Falls die Datei erkannt wurde, wird automatisch ein PreferenceScreen als Root Element definiert. Wurde alles richitg gemacht, sollte die XML Datei folgendes beinhalten:
(XML-Code)
(Grafische Ansicht)
Es muss abschließend nur noch diese Datei mit der Klasse verknüpft werden. Dafür ist folgender Aufruf in der onCreate Methode notwendig:
Layout
Da ich mit dem Anmeldeprozess beginnen möchte, beginne ich nur mit dem Einbau des dafür Relevanten Menüpunktes. Dieser wird im Untermenü "Accounteinstellungen" zu finden sein und "Anmelden" heißen. Die XML-Datei sieht dann so aus:
Damit ist jetzt alles für den Loginprozess eingebaut, im nächsten Teil möchte ich dann mit dem Einbinden des Fragments in eine Activity weitermachen.
Wenn dir der Post gefallen hat und du mich und dieses Projekt unterstützen möchtest, dann tue dies durch einen Upvote.