Hallo,
ich hoffe, dass mirhier ein paar erfahrene Android-Programmierer etwas unter die Arme greifen können. Ich bin neu in der Android-Welt und möchte ein erstes, ganz kleines Projekt umsetzen, um erste Erfahrungen zusammeln:
Anforderungsblatt:
Die App soll nur als Hilfmittel für ein Würfelspiel dienen, um nicht selbst die Punkte notieren und addieren zu müssen. Die App soll 2 Layouts(Activities?) haben. Nennen wir Sie L1 und L2. Auf L1 sollen die Namen der Mitspieler (2-8) stehen, sowie diverse Buttons mit den erreichbaren Punkten. Bei Klick auf einen der Buttons, soll dem gerade aktiven Mitspieler die entsprechende Punktzahl gutgeschrieben werden.
L1 dient also dazu, den Spielern die Punkte gutzuschreiben und eine (Schnell-)Übersicht der Spieler inkl. der Punktzahlen zu bekommen.
L2 soll dagegen lediglich eine Tabelle enthalten, um den Punktverlauf nachvollziehen zu können. Als Spaltenbeschreibungen sollen die Namen der Mitspieler eingetragen werden, Zeilenbeschriftung ist die jeweilige Rundenzahl(1-20).
Beispiel:
Spieler 1 würfelt in Runde 1 eine 10. Ich drücke in der App (Layout 1) den Button für10 Punkte. Folgendes soll nun passieren: Auf L1 soll der Punktstand für Spieler 1 aktualisiert werden, aktiver Spieler muss auf Spieler2 geändert werden, in der Tabelle auf Layout 2 soll ein Eintrag in Zeile 1 /Spalte 1 ein Eintrag mit dem Wurfergebnis erzeugt werden. Nun folgt Spieler 2....
Das war es schon. Im Großen und Ganzen weiß ich auch, wie das umzusetzen ist – trotzdem habe ich einige Fragen:
1) Klassendesign: Ich würde 2 Klasse anlegen – Spiel (int:anzahlMitspieler,int:anzahlRunden, int:aktuelleRunde,Mitspieler:mitspieler1, etc.) und Mitspieler (string:name, int:punktzahl). Ich bin mir allerdings unsicher, ob die Klasse „Spiel“ Sinn macht, da ich ja immer nur ein Objekt der Klasse hätte. Wie sieht hier eine gute Lösung aus?
2) In welche Klasse gehört die Methode wurf(int augenzahl)? In die Klasse Mitspieler oder Spiel?
3) Überhaupt keine Ahnung habe ich, wie ich die Tabelle in L2 realisieren kann und wenn die Tabelle erstmal steht, wie ich sie korrekt befülle. Auch müsste zur Laufzeit die Anzahl der Mitspieler berücksichtigt werden.
4) Ist der folgende App-Aufbau gut?
-App-Startseite mit Optionen „Anzahl Mitspieler“
-2. Optionsseite zum Eintragen der Namen (Wie setze ich das um, dass die Anzahl der Eingabefelder mit der Anzahl der im Schritt 1 angegebenen Mitspieler übereinstimmt?)
- Spielstart (sind die obene genannten (Options-)Punkte extra Activities oder legt man sowas in das Einstellungsmenü?
Javaliteratur stehtmir zur Verfügung – ich brauche jetzt erstmal den einen oder anderen Ansatz, wie und womit ich die o.g . Punkte am besten umsetze;ich hoffe, dass ihr mir hier ein wenig helfen könntet...
Vielen Dank imVoraus!