GUI-Programmierung. (5) Das Spielfeld

Ähnliche Dokumente
(3) Button-Klick & Texteingabe

(6) Verknüpfen der GUI mit dem Spiel

Google Android API. User Interface. Eine knappe Einführung

Cocktail-Rezepte-APP

Erste App (2) Zeichnen für Fortgeschrittene

GUI-Programmierung (2) Der Startbildschirm

InfoSphere goes Android FlappyBird

InfoSphere goes Android MoleMash

GUI-Programmierung. (2) Der Startbildschirm

InfoSphere goes Android Hallo InfoSphere

(1)Einführung in Eclipse

App-Entwicklung für Android

1. Im Hauptmenü wechseln Sie in den Punkt Liste. 2. Im Seitenbaum klicken Sie in den Menüpunkt, wo das Formular eingefügt werden soll.

Tastenkürzel. Allgemein

Inhaltsverzeichnis. 1:Element Filter : Modelllinie an Objekt : Pläne duplizieren : Kabellänge : Ebenenbemaßung...

Inhaltsverzeichnisse. 1. Überschriften zuweisen. 2. Seitenzahlen einfügen. 3. Einen Seitenwechsel einfügen

GIS Anwendungen (WPF II) 1 Punktdatei anlegen. 2 Neuen Ordner (Startpunkt) anlegen. 3 Einen Pfad zum neuen Projekt schaffen.

Mobile App Development. - Grafische Oberflächen -

Android GUI Entwicklung

Android - Layout einer Benutzeroberfläche. Leibniz Universität IT Services Anja Aue

FACTORY LAYOUT & MECHANICAL HANDLING

Kurzanleitung Hama Photokalender v

BESCHREIBUNG. Etikettendruck. CASABLANCAhotelsoftware gmbh - Öde Schönwies - Tirol - Austria

Mobile App Development. - Grafische Oberflächen -

Inhaltsverzeichnisse

In Inventor werden Stile bzw. Stilbibliotheken zur Formatierung von Objekten benutzt:

Map It: Standorte in Google Maps speichern und anzeigen

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

DAS EINSTEIGERSEMINAR

Erste App (1) Zeichnen für Anfänger

Rückgabewerte von Methoden

Station 3 Die Roboter Fernsteuerung für Profis! Roboterfernsteuerung über den Lagesensor!

Kopf-/Fußzeilen und Seitenzahlen

Für diesen Versuch benötigt ihr:

Fragegetypen LineQuest online Umfrage Portal. Inhaltsverzeichnis

03. übung. InDesign. medienwerkstatt // seite 1

Arbeiten mit Suchergebnissen

Visual Basic Express Fehlerermittlung

Schwebende DIV-Container erzeugen

OpenOffice - Cal. Microsoft - Excel

Erweiterte Einstellungen Noten und Leistungen eintragen

Sprachdialogsysteme Arbeitsblatt inge - ines Grammatik Editor

Im Original veränderbare Word-Dateien

Ziehen Sie jetzt mit gedrückter linker Maustaste ein Rechteck auf dem Formulareditor auf. Lassen Sie die Maustaste dann los. Was passiert?

MUNIA Bedienungsanleitung

Ein erstes "Hello world!" Programm

DVD Film grösser als 4,7. Hier zeige ich wie man aus einem Film der nach dem Rippen mit Smartripper immer noch eine

Das Handbuch zu KReversi. Clay Pradarits Entwickler: Mario Weilguni Korrektur: Lauri Watts Deutsche Übersetzung: Maren Pakura

Präsentationen mit Impress

Informatik Enlightened. Station 0 - Einstieg

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK

Erstellung von Reports mit Anwender-Dokumentation und anderen Textbausteinen

Naviki GPS-Anwendungsentwicklung für Mobiltelefone

Tutorial. Programmierung einer Android-Applikation. Teil 1

Anleitung OpenCms 8 Der Textbaustein

Erstellen von Präsentationen

Klimacomputer CC600. Bedienung CCWebControl Version 1.0

WIKI IN EWS Grundlegende Syntaxelemente zur Bearbeitung von Wiki-Artikeln

Serienbrief erstellen

4 Makros ausprobieren

In diesem ersten Kapitel erhalten Sie einen Überblick über das Programm Microsoft PowerPoint 2003.

Zahlenraten: Ein Spiel in Java.

Kleine Einführung in den Matlab-GUI-Editor

Anwenderprodukte in MTpro

3D-Druck Feriencamp OpenSCAD - Der Schlüsselanhänger

Arbeitsblatt 5 EAD II NetBeans

A0 sort & search Hinweise

Was ist Neu! Power-to-Design Schaltungen. HyDraw CAD 2019 What s New 1 of 29

Installationsanleitung Kundendienst-App

Kleiner Helfer für Gruppenleiter zur Bedienung des Onlinemoduls

InfoSphere goes Android Angry Blob

Wissenschaftliche Arbeiten schreiben mit Word

Formulare. Datenbankanwendung 113

Willkommen. Ausprobieren und Spaß haben easescreen!

3 VOREINSTELLUNGEN ANPASSEN

KOPF- UND FUßZEILEN KOPF- UND FUßZEILEN HINZUFÜGEN

Funktionen in JavaScript

C0 program & code Hinweise

App mit InDesign Teil I

Datenstrukturen bei Datenübernahme

Comic Life 3.x. Fortbildung zum Mediencurriculum

Microsoft PowerPoint für Office 365 Designer

Das Handbuch zu KReversi. Clay Pradarits Entwickler: Mario Weilguni Korrektur: Lauri Watts Deutsche Übersetzung: Maren Pakura

Tutorial: Verwendung von Visual Studio 2005 als XML-Werkzeug

Transkript:

Mit erreichen von Arbeitsblatt 5 habt ihr es bereits geschafft euer Spiel zu starten. Das ist schon einmal super. Allerdings kann noch nicht viel gespielt werden. Das sollt ihr jetzt ändern. Arbeitsblatt 5 legt dazu die Grundlage, indem ihr das komplette Layout eurer Spielansicht designen werdet. Dazu zählen ein Weiter-Button um nach dem Zug des Computers weiter zu spielen. eine Anzeige für den Namen des aktiven Spielers. eine Anzeige für Informationen über den Spielverlauf (Treffer etc.). ein 8x8 Großes Spielfeld. Öffnet zunächst das XML-Layout eurer Spielansicht. In diesem werdet ihr die meiste Zeit arbeiten. Wechselt von der Drag n drop -Ansicht in die XML-Ansicht und löscht sämtliche Inhalte. Anordnung einzelner Elemente Ihr habt nun ein leeres XML-Layout vor euch. Dieses Layout wird eure Spielansicht, welche die vier oben genannten Elemente enthalten soll. Bevor ihr euch diesen Elementen widmen könnt, braucht ihr allerdings ein paar Informationen über den Aufbau eines XML-Dokuments bzw. wie ihr die Elemente in diesem übersichtlich anordnen könnt. Ihr benötigt dafür ein LinearLayout. Nicht von dem Namen verwirren lassen. So genannte LinearLayouts sind XML- Elemente die ihr in eurem eigentlichen Layout verwenden könnt um Objekte anzuordnen. Diese LinearLayouts geben euch zwei Optionen wie ihr Buttons etc. anordnen könnt. Ihr könnt zwischen der Option horizontal und vertical wählen. Was diese bedeuten, werdet ihr auf der nächsten Seite erfahren. 1

LinearLayout (Horizontal) Alle Elemente die ihr in ein horizontales LinearLayout einfügt werden nebeneinander angeordnet. <LinearLayout XML-Code android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > HIER WERDEN ELEMENTE HINZUGEFÜGT </LinearLayout> LinearLayout (Vertical) Alle Elemente die ihr in ein vertikales LinearLayout einfügt werden untereinander angeordnet. XML-Code <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > HIER WERDEN ELEMENTE HINZUGEFÜGT </LinearLayout> Zusätzlich muss in jedem XML-Dokument ein so genannter namespace deklariert werden. Dieser muss immer im ERSTEN Element des XML-Dokuments hinzugefügt werden. Er erlaubt es euch Anweisungen wie android:layout_width zu benutzen. Hier ein kleines Beispiel: Abbildung 1: Beispiel für die Verwendung von LinearLayouts (Lösung auf der nächsten Seite ;)) Schreibt das Beispiel NICHT ab, sondern überlegt euch welche Anordnung der Button 1,2 und 3 theoretisch erzeugt werden würde. Auf der nächsten Seite findet ihr die Lösung. 2

Abbildung 2: Durch den Beispielcode erzeugte Anordnung dreier Buttons Als nächstes müsst ihr euer eigenes Layout erzeugen. Durch das vorige Beispiel wisst ihr schon wie das geht. Überlegt euch wie ihr die Elemente Weiter-Button, Label(aktiverSpieler), Label(Spielinformation und das Spielfeld anordnen wollt. 1. Erzeugt nur das Layout (kombinieren von LinearLayouts) 2. Fügt mit Hilfe der Informationen im nächsten Abschnitt die Elemente ein Der Weiter-Button Der Weiter-Button soll, wie der Name schon sagt, ein Button werden. Als android:id soll er den Wert weiterbutton bekommen. Als Text soll Weiter auf dem Button stehen. Zusätzlich sollt ihr eine onclick-funktion für den Button anlegen, deren Namen ihr euch aussuchen dürft. Denkt daran den String Weiter eurer Strings.xml hinzuzufügen. Der aktive Spieler Die Anzeige des aktiven Spielers soll ein reines Textfeld sein. Was könntet ihr zur Darstellung von Text benutzen? Die android:id des gewählten XML-Elements soll aktiverspieler heißen. Der Name soll noch nicht angezeigt werden, also soll der Text ein leerer Text ( ) sein. 3

Die Spielinformationen Zur Anzeige von Spielinformationen, wie Anzahl der Treffer o.ä., braucht ihr eine weitere Textanzeige. Die android:id soll spielinformation heißen. Nachdem ihr diese drei Elemente in euer Layout eingefügt habt, könnt ihr direkt einmal die App testen und schauen was passiert wenn ihr ein neues Spiel startet. Überlegt euch im Vorfeld wie es aussehen soll und überprüft ob es auch tatsächlich so ist. Das 8x8-Spielfeld Bevor ihr mit dem Spielfeld weiter macht ist es wichtig, dass der vorige Teil funktioniert. Da 64 neue Elemente (keine Angst die meisten sind Copy/Paste) hinzugefügt werden, kann das XML-Dokument sonst leicht unübersichtlich werden. Für das Spielfeld werdet ihr eine neue Form von XML-Elementen kennenlernen. Die so genannten TableLayouts. Diese dienen euch als einfache Tabelle mit einzelnen Reihen. Bei einem 8x8 Spielfeld braucht ihr also 8 Reihen mit jeweils 8 Elementen. Der XML-Code für ein TableLayout sieht folgendermaßen aus (diesen dürft ihr für euer Spielfeld abschreiben): <TableLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <TableRow android:id="@+id/tablerow1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:weightsum="8"> HIER DIE ELEMENTE DER EINZELNEN REIHEN EINTRAGEN </TableRow> </TableLayout> In dem Beispiel kommt ein, euch unbekannter, XML-Befehl vor: Android:weightSum werdet ihr benutzen damit alle Elemente in eurem Spielfeld gleich groß sind. Der Wert 8 sagt der Reihe daher, dass sie in 8 gleich große Teile aufgespalten werden soll. 4

Nun geht es weiter mit dem Copy/Paste-Teil. Jedes Element im Spielfeld soll ein Button werden. Diese Buttons sollen keinen Text aber dafür verschiedene andere Parameter erhalten. android:id Als Id werden die Button wie eine Matrix durchnummeriert. Der erste Button in der ersten Reihe kriegt die android:id= @+id/spiel00. Oder anders formuliert: spiel(reihe)(spalte) Wie sehen dann die weiteren ids aus? Wenn ihr euch nicht sicher seid, fragt einen Betreuer. android:onclick Die android:onclick-funktion von jedem Button soll den Wert buttonlistener bekommen. android:layout_weight Der letzte wichtige Parameter ist android:layout_weight. Dieser soll folgenden Wert erhalten: android:layout_weight="1". Dieser Parameter muss dann genutzt werden wenn ihr eine weight_sum deklariert habt. Er wird einem Element zugewiesen und gibt an, wie groß das Element sein soll. Haben alle Elemente den Wert 1, dann sind sie gleich groß. Hat ein Element den Wert 2 ist es doppelt so groß wie die anderen. Achtung: Die Summe aller layout_weight muss genau gleich der weight_sum sein. android:layout_width/height Diese dürft ihr nicht vergessen. Überlegt euch einfach selber was Sinn macht. Jetzt habt ihr schon die gesamte Spielansicht fertig. Fehlt nur noch die Verknüpfung mit dem eigentlichen Spiel. 5