Mobile App Development. - Grafische Oberflächen -

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Mobile App Development. - Grafische Oberflächen -"

Transkript

1 Mobile App Development - Grafische Oberflächen -

2 Inhalt Ressourcen Allgemeines Views Layouting

3 Ressourcen

4 Android Ressourcen

5 Android Ressourcen Ressourcen sind Dateien und Objekte, wie Layouts, Bilder, Farben und IDs Zu jeder Ressource wird ein Eintrag in R.java generiert

6 Android Ressourcen public final class R { } public static final class color { public static final int black=0x7f040000; } public static final class drawable { public static final int ic_launcher=0x7f020000; } public static final class id { public static final int LinearLayout1=0x7f080000; public static final int btnsayhello=0x7f080004; public static final int edtname=0x7f080003; public static final int imageview1=0x7f080001; public static final int menu_settings=0x7f080005; public static final int txtentername=0x7f080002; } public static final class layout { public static final int activity_main=0x7f030000; public static final int test_activity=0x7f030001; } public static final class menu { public static final int activity_main=0x7f070000; } public static final class string { public static final int app_name=0x7f050000; public static final int hello_world=0x7f050001; }

7 Android Ressourcen Farben res/values/colors.xml <?xml version="1.0" encoding="utf-8"?> <resources> <color name="black"># </color> <color name="green">#0000ff00</color> </resources> public final class R { } public static final class color { public static final int black=0x7f040000; public static final int green=0x7f040001; }

8 Android Ressourcen Strings res/values/strings.xml <resources> <string name="app_name">hello World</string> <string name="hello_world">hello world!</string> </resources> public static final class string { public static final int app_name=0x7f050000; public static final int hello_world=0x7f050001; }

9 Android Ressourcen Layouts public static final class layout { public static final int activity_main=0x7f030000; public static final int content_main=0x7f030001; }

10 Android Ressourcen Bilder public static final class drawable { public static final int ic_launcher=0x7f020000; }

11 Android Ressourcen IDs res/layout/activity_main.xml <LinearLayout xmlns:android="..." xmlns:tools=" > <TextView /> <Button /> </LinearLayout> public final class R { public static final class id { public static final int LinearLayout1=0x7f080000; public static final int btnsayhello=0x7f080004; public static final int name=0x7f080002; }

12 Android Ressourcen Verwendung im Quelltext Die Attribute, die in der R.java angelegt wurden, können vom Quelltext aus als Referenz-ID verwendet werden Beispiel: Button btn = (Button) findviewbyid(r.id.button); btn.settext(r.string.app_name);

13 GUIs

14 Grafische Oberflächen Grafische Oberflächen können in Android auf zwei Arten erstellt werden in Form von XML-Layout-Dateien, aus denen zur Laufzeit Views erstellt werden (LayoutInflater) oder programmatisch wie z.b. in Swing Wenn möglich sollten Layout-Dateien verwendet werden (res/layout)

15 View View (Widget) zeichnet etwas auf dem Screen grafisches Element, mit dem der Benutzer interagieren kann Oberklasse von allen Standard Controls Button, TextField, ProgressBar, ImageView

16 ViewGroup ViewGroup unsichtbarer Container, der andere Views oder ViewGroups aufnimmt... und diese positioniert Oberklasse von Containern LinearLayout, GridLayout, ListView

17 View Hierarchie View und ViewGroups bilden eine Hierarchie, d.h. einen Baum von Views

18 Beispiel Hello World <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" tools:context=".mainactivity" android:orientation="vertical"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="example Application 1" /> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal">... <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" /> </LinearLayout> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="say Hello?" /> </LinearLayout>

19 Views

20 BuAon View Button besteht aus einem Text und/oder einem Icon Bei Klick wird irgendeine Aktion ausgeführt

21 BuAon View Button besteht aus einem Text und/oder einem Icon Bei Klick wird irgendeine Aktion ausgeführt XML <Button />

22 BuAon View auf Klicks reagieren Möglichkeit 1: in der Activity einen OnClickListener erstellen und am Button registrieren Möglichkeit 2: Angabe einer aufzurufenden Methode während GUI Design

23 BuAon View Möglichkeit 1 programmatische Zuweisung einer OnClickListener-Implementierung button = (Button) findviewbyid(r.id.button); button.setonclicklistener(new View.OnClickListener(){ public void onclick(view v) { /* IMPLEMENT ACTION */ } });

24 BuAon View Möglichkeit 2 Angabe einer Methode, die in der Activity ausgeführt werden soll, wenn der Button geklickt wurde Achtung: die Methode muss in der Activity auch implementiert sein <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="say Hallo" android:onclick="btnclick" />

25 BuAon View Möglichkeit 2

26 BuAon View Möglichkeit 2 Implementierung der Methode gleicher Name, wie in XML <Button android:text="say Hallo" android:onclick="btnclick" /> public-zugriff void return Wert public void btnclick(view view) { // do magic... } genau 1 Parameter: View

27 EditText View EditText Views ermöglichen dem Benutzer die Eingabe von Text

28 EditText View EditText Views ermöglichen dem Benutzer die Eingabe von Text Tastatur öffnet sich automatisch nach Touch XML <EditText android:inputtype="textpersonname" android:text="name" />

29 EditText View Input type gibt an, welche Art von Text eingegeben werden soll, z. B. Plain, , Password Textarten werden in Klassen eingeteilt Variation von Textklassen beeinflusst das Keyboard-Verhalten, z. B. erster Buchstabe groß, multi line

30 EditText View InputType Beispiele Klasse Text Number Text Variation textcapsentences numberdecimal textpassword

31 EditText View Input type setzen

32 EditText View Input type setzen XML <EditText android:inputtype="textcapwords textautocomplete" android:text="name" /> programmatisch edittext = (EditText) findviewbyid(r.id.edittext); edittext.setinputtype(inputtype.type_text_flag_cap_words InputType.TYPE_TEXT_FLAG_AUTO_COMPLETE);

33 EditText View Keyboard action gibt an, welcher Button an Stelle des Return-Buttons in der Tastatur angezeigt werden soll XML <EditText android:imeoptions="actionnone" android:singleline="true" />

34 EditText View actionnone actiondone actionsend

35 EditText View actionnext actiongo actionsearch

36 EditText View Auf Keyboard action reagieren edittext.setoneditoractionlistener(new EditText.OnEditorActionListener() public boolean oneditoraction( TextView v, int actionid, KeyEvent event) { boolean handled = false; return handled; } });

37 EditText View Weitere Eigenschaften Hint text <EditText... android:hint="guess your Name... /> Bilder <EditText... android:text="" android:hint="guess your Name..." />

38 EditText View... und noch mehr Eigenschaften Text style, typeface, size Line spacing Text color, hint color...

39 CheckBox View Eine CheckBox ermöglicht dem Benutzer eine mit ihr verknüpfte Eigenschaft auf true oder false zu setzen.

40 CheckBox View Eine CheckBox ermöglicht dem Benutzer eine mit ihr verknüpfte Eigenschaft auf true oder false zu setzen. XML <CheckBox android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="beer" android:checked="true" />

41 CheckBox View auf CheckBox Klicks reagieren Möglichkeit 1 Angabe einer Methode die in der Activity ausgeführt werden soll, wenn der Button geklickt wurde Möglichkeit 2 programmatische Zuweisung eines OnClickListeners

42 CheckBox View Möglichkeit 1 Angabe einer Methode, die in der Activity ausgeführt werden soll, wenn die CheckBox geklickt wurde <CheckBox android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="beer" android:onclick="onbeerboxclicked" android:checked="true" />

43 CheckBox View Möglichkeit 1

44 BuAon View Möglichkeit 1 Implementierung der Methode gleicher Name, wie in XML public-zugriff void return Wert genau ein Parameter: View <CheckBox android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="beer" android:onclick="onbeerboxclicked" android:checked="true" /> public void onbeerboxclicked(view view) { CheckBox cb = (CheckBox) findviewbyid(r.id.chkbeer); if (cb.isselected()) { /* do something */ } else { /* do it not... */ } }

45 CheckBox View Möglichkeit 2 programmatische Zuweisung eines OnClickListeners CheckBox cbbeer = (CheckBox) findviewbyid(r.id.cbbeer); cbbeer.setonclicklistener(new View.OnClickListener() public void onclick(view v) { CheckBox cb = (CheckBox) v; if (cb.ischecked()) { /* do something */ Toast.makeText(MainActivity.this, "Beer clicked", Toast.LENGTH_LONG).show(); } else { /* do the other things */ } } });

46 CheckBox View Möglichkeit 2 Alternative: programmatische Zuweisung eines OnCheckedChangeListener CheckBox cb = (CheckBox) findviewbyid(r.id.chkbeer); cb.setoncheckedchangelistener (new CompoundButton.OnCheckedChangeListener() public void oncheckedchanged( CompoundButton buttonview, boolean ischecked) { /* state =!state */ } });

47 RadioBuAon View RadioButtons ermöglichen dem Benutzer die Auswahl einer Option aus mehreren verschiedenen.

48 RadioBuAon View Optionen, die durch RadioButton repräsentiert werden, schließen sich gegenseitig aus (mutually exclusiv) RadioButtons werden in RadioGroups zusammengefasst

49 RadioBuAon View XML <RadioGroup android:layout_width="fill_parent" android:layout_height="wrap_content"> <RadioButton <RadioButton <RadioButton <RadioButton android:checked="true" /> </RadioGroup>

50 RadioBuAon View auf Auswahl reagieren Angabe der Activity-Methode <RadioGroup android:layout_width="fill_parent" android:layout_height="wrap_content"> <RadioButton android:onclick="rbselect"/> <RadioButton android:onclick= rbselect" /> <RadioButton android:onclick="rbselect"/> <RadioButton android:onclick="rbselect" android:checked="true" /> </RadioGroup>

51 RadioBuAon View Implementierung in Activity Regeln für Signatur analog zu Button und CheckBox public void onselect(view view) { switch (view.getid()) { case R.id.rbCompiler: /* do */ break; case R.id.rbMada: /* some */ break; case R.id.rbProzessor: /* nice */ break; case R.id.rbRecht: /* things... */ break; default: /* WTF?? */ break; } }

52 ProgressBar View ProgressBars werden verwendet, um den Fortschritt einer Operation anzuzeigen

53 ProgressBar View ProgressBars werden verwendet, um den Fortschritt einer Operation anzuzeigen <ProgressBar... android:progress="70" android:max="100" />

54 ProgressBar View style Attribute bestimmt die Form der ProgressBar <ProgressBar... style=?android:attr/progressbarstylehorizontal" android:progress="70" android:max="100"/>

55 ProgressBar View max = Anzahl Ticks progress = aktuelle Ticks <ProgressBar style="?android:attr/progressbarstylehorizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:progress="70" android:max="100"/>

56 ProgressBar View Spezielle ProgressBars RatingBar Verwendung zur Dar- stellung einer Bewertung SeekBar Verwendung zum Setzen eines Wertes (z. B. Lautstärke)

57 Spinner View Eine Spinner View erlaubt dem Benutzer die Auswahl eines einzelnen Elements aus einer Menge.

58 Spinner View Eine Spinner View erlaubt dem Benutzer die Auswahl eines einzelnen Elements aus einer Menge. XML <Spinner android:layout_width="match_parent" android:layout_height="wrap_content"... />

59 Spinner View Wo kommen die Superhelden her und wie wird der Spinner gefüllt?

60 Spinner View Wo kommen die Superhelden her und wie wird der Spinner gefüllt? 1. Situation: Elemente sind zur Compile-Zeit bekannt 2. Situation: Elemente sind zur Compile-Zeit noch nicht bekannt

61 Spinner View Sind die Elemente zur Compile-Zeit bekannt, können sie in einer Array- Resource eingetragen und verwendet werden. Was sind Array-Resourcen?

62 Spinner View Definition eines String arrays res/values/strings.xml <resources>... <string-array name="heros"> <item>superman</item> <item>batman</item> <item>spiderman</item> <item>flash</item> </string-array> </resources>

63 Spinner View res/values/strings.xml Zuweisung des String arrays an den Spinner <resources>... <string-array name="heros"> <item>superman</item> <item>batman</item> <item>spiderman</item> <item>flash</item> </string-array> </resources> res/layout/activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android" xmlns:tools=" <Spinner android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>

64 Spinner View 2. Situation: Elemente erst zur Laufzeit bekannt Verwendung von Adaptern Adapter bilden Brücke zwischen sog. AdapterViews und den darzustellenden Daten

65 Spinner View Verwendung eines ArrayAdapters /* ArrayAdapter erstellen */ ArrayAdapter<String> adapter = new ArrayAdapter<String>( MainActivity.this, R.layout.support_simple_spinner_dropdown_item); /* Daten hinzufügen */ adapter.add("superman"); adapter.add("batman"); adapter.add("spiderman"); adapter.add("flash"); /*Spinner aus View organisieren und Adapter zuweisen */ Spinner s = (Spinner) findviewbyid(r.id.spinner); s.setadapter(adapter);

66 Spinner View Auf eine Auswahl reagieren s.setonitemselectedlistener( new AdapterView.OnItemSelectedListener() public void onitemselected( AdapterView<?> parent, View view, int pos, long id) { //TODO: implement me String str = (String) parent.getitematposition(pos); public void onnothingselected( AdapterView<?> parent) { //TODO: implement me } });

67 List View ListViews werden verwendet, um mehrere Elemente in einer vertikalen Liste darzustellen

68 List View ListViews werden verwendet, um mehrere Elemente in einer vertikalen Liste darzustellen XML <ListView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" />

69 List View Wie wird die Liste befüllt? analog zur SpinnerView 1. Situation: Elemente sind zur Compile-Zeit bekannt 2. Situation: Elemente sind zur Compile-Zeit noch nicht bekannt

70 String-Array Definition eines String arrays res/values/strings.xml <resources>... <string-array name="lebensmittel"> <item>brot</item> <item>schinken</item> <item>käse</item> <item>butter</item> <item>bier</item> </string-array> </resources>

71 String-Array Zuweisung des String arrays an die Liste res/layout/activity_main.xml res/values/strings.xml <resources>... <string-array name="lebensmittel"> <item>brot</item> <item>schinken</item> <item>käse</item> <item>butter</item> <item>bier</item> </string-array> </resources> <ListView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" />

72 List View 2. Situation: Elemente erst zur Laufzeit bekannt Verwendung eines Adapters, um die Liste zur Laufzeit zu befüllen

73 Spinner View Verwendung eines Adapters, um die Liste zur Laufzeit zu befüllen ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.r.layout.simple_list_item_1); adapter.add("brot"); adapter.add("schinken"); adapter.add("käse"); ListView lv = (ListView) findviewbyid(r.id.listview1); lv.setadapter(adapter);

74 List View Auf Element Klicks reagieren ListView lv = (ListView) findviewbyid(r.id.listview); lv.setonitemclicklistener( new AdapterView.OnItemClickListener() public void onitemclick( AdapterView<?> parent, View view, int position, long id) { /* magic again... */ } });

75 LayouLng

76 Layouts Layouts... sind ViewGroups (Container) können andere ViewGroups und Views aufnehmen werden verwendet, um ihre Kindelemente auf dem Screen zu positionieren

77 Layout Parameter Jede View besitzt Layout-Parameter, die der umgebenden ViewGroup mitteilen, wie die View in Position und Größe dargestellt werden soll. Je nach umgebender View werden verschiedene Layout-Parameter verwendet.

78 Layout Parameter Beispiel <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button" /> <Button android:layout_width= wrap_content" android:layout_height= fill_parent" android:text="button" /> <Button android:layout_width= fill_parent" android:layout_height= fill_parent" android:text="button" />

79 FrameLayout wird in der Regel verwendet, um ein Element darzustellen Layout-Attribut gravity <FrameLayout android:layout_width="260dp" android:layout_height="260dp" android:layout_gravity="center_horizontal"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:text="button" /> </FrameLayout>

80 FrameLayout kann auch mehrere, gestapelte Views enthalten Darstellung nach Einfügereihenfolge <FrameLayout android:layout_width="260dp" android:layout_height="260dp" android:layout_gravity="center_horizontal"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:text="my Button" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="a large text for testing" android:layout_gravity="center" /> </FrameLayout>

81 LinearLayout Ein LinearLayout richtet seine Kindelemente entlang einer bestimmt Richtung aus Diese Richtung (Orientierung) kann horizontal und vertikal sein

82 LinearLayout Orientierung <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation= horizontal" android:orientation= vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancemedium" /> <EditText android:layout_width="173dp" android:layout_height="wrap_content" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="new Button" /> </LinearLayout>

83 LinearLayout Layout-Parameter weight gibt an, wie groß eine View im Verhältnis zu anderen Views dargestellt werden soll nicht ausgefüllter Platz im parent wird zwischen den Views gemäß dem Verhältnis ihrer weight Werte verteilt <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="2" />

84 LinearLayout Beispiel Layout-Parameter weight weight weight weight TextField EditText Button - - 3

85 TableLayout Das TableLayout richtet seine Kindelemente in Form einer Tabelle aus, d. h. in Form von Spalten und Zeilen Aufbau des Layouts ist sehr ähnlich zu HTML-Tabellen (<tr>, <td>) Kindelemente werden in Zeilen und Zellen gruppiert

86 TableLayout Beispiel <TableLayout android:stretchcolumns="*" android:gravity="center"> <TableRow android:gravity="center"> <TextView android:text="large Text" /> <TextView android:text="large Text" /> </TableRow> <TableRow android:gravity="center"> <Button android:text="new Button" /> <Button android:text="new Button" /> </TableRow> </TableLayout>

87 TableLayout Shrink-Attribut gibt an, welche Spalten verkleinert werden sollen, wenn der Platz nicht für alle reicht mögliche Werte: Liste von Spaltenindizes * für alle Spalten

88 TableLayout Shrink-Attribut <TableLayout android:shrinkcolumns="*" <TableRow > <Button /> <Button /> <Button /> <Button /> </TableRow> </TableLayout>

89 TableLayout Stretch-Attribut gibt an, welche Spalten vergrößert werden sollen, wenn mehr Platz als benötigt zur Verfügung steht mögliche Werte: Liste von Spaltenindizes * für alle Spalten

90 TableLayout Stretch-Attribut <TableLayout android:stretchcolumns= 0" android:stretchcolumns= 1,2 android:stretchcolumns= *" <TableRow > </TableRow> </TableLayout>

91 RelaLveLayout RelativeLayout wird verwendet, um Views relativ zu einander auszurichten Nachteil: kompliziertes Layout Vorteil: sehr flache View-Hierarchie und dadurch bessere Performance

92 RelaLveLayout <RelativeLayout > <TextView android:text="example Application 1" android:layout_alignparenttop="true" android:layout_alignparentend="true" /> <TextView android:text="enter your Name" android:layout_alignparentstart="true" /> <EditText android:layout_alignparentstart="true" /> <Button android:text="say Hello?" android:layout_alignparentend="true" /> </RelativeLayout>

93 RelaLveLayout RelativeLayout.LayoutParams RelativeLayout.LayoutParams.html

94 RelaLveLayout RelativeLayout.LayoutParams RelativeLayout.LayoutParams.html

95 <include/> Wiederverwendung von Layouts Oft ist es sinnvoll bestimmte Layouts wieder zu verwenden, um Mehrarbeit zu vermeiden Hierfür bietet Android das <include/> Element

96 <include/> Beispiel <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ok" android:layout_weight="1" android:layout_gravity="center_horizontal" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="cancel" android:layout_weight="1" android:layout_gravity="right" /> </LinearLayout>

97 <include/> Beispiel <LinearLayout <TextView android:text="example Application 1" /> <LinearLayout <TextView /> <EditText /> </LinearLayout> <include android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>

98 PrakLkum

99 Übung Übung 01 - Taschenrechner Es soll eine Taschenrechner-App erstellt werden, mit der einfache Berech- nungen durchgeführt werden können. Die App soll mindestens die Grundrechenarten Addition, Subtraktion, Mul- tiplikation und Division unterstützen. Außerdem soll es möglich sein, mehr als zwei Operanden und mehr als einen Operator einzugeben, sowie das Ergebnis der Berechnung als Operand für die nächste Berechnung zu ver- wenden. Für die Entwicklung der App sollen die in der Vorlesung vorgestellten Viewund ViewGroup-Elemente verwendet werden. Hinweis: Der Fokus dieser Übung liegt nicht auf der Auswertung mathematischer Ausdrücke, sondern auf der Entwicklung einer funktionsfähigen Oberfläche. Aus diesem Grund kann für die Auswertung und Berechnung der Ausdrücke eine externe Bibliothek, wie bspw. verwendet werden.

100 Literatur I. Arno Becker, Marcus Pant, Android 4.4, 3.Auflage, dpunkt.verlag, ISBN: II. Thomas Künneth: Android 3 - Apps entwickeln mit dem Android SDK Galileo Press, 2011 III. Mark L. Murphy, Commonsware, The Busy Coder s Guide to Android Development IV. V.

Mobile App Development

Mobile App Development Mobile App Development - Graphische Oberflächen - Graphische Oberflächen Oberflächenbeschreibung in XML layout Dateien in res/layout LayoutInflater: Erstellung von Java-View-Objekten aus der XML-Definition

Mehr

Mobile App Development. - Grafische Oberflächen -

Mobile App Development. - Grafische Oberflächen - Mobile App Development - Grafische Oberflächen - Inhalt Ressourcen Allgemeines Views Layouting Ressourcen Android Ressourcen Ressourcen sind Dateien und Objekte, wie Layouts, Bilder, Farben und IDs Zu

Mehr

Aus einem (sehr) begrenzten Wertebereich (z.b. Zahlen von 1-5) soll ein Wert ausgewählt werden.

Aus einem (sehr) begrenzten Wertebereich (z.b. Zahlen von 1-5) soll ein Wert ausgewählt werden. Lösungsvorschlag: 1. Aufgabe (18 Punkte): Auswahl Aus einem (sehr) begrenzten Wertebereich (z.b. Zahlen von 1-5) soll ein Wert ausgewählt werden. a) Nennen Sie drei unterschiedliche Arten, diese Interaktion

Mehr

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

Google Android API. User Interface. Eine knappe Einführung Google Android API User Interface Eine knappe Einführung Google Android API User Interface Designelement Wofür Klasse/Package View Basisklasse für alle Designelemente public class android.view.view Viewgroup

Mehr

Labor 2 : Hello, World Plus

Labor 2 : Hello, World Plus Labor 2 : Hello, World Plus Ziel Als nächstes werden Sie eine neue Anwendung HelloAndroidPlus erstellen, die eine Erweiterung der Funktionalität der ersten Übung HelloAndroidPrj beinhaltet: Sobald man

Mehr

Android GUI Entwicklung

Android GUI Entwicklung Android GUI Entwicklung Aktuelle Technologien verteilter Java Anwendungen Referent: Stefan Haupt Hello World! Agenda Einführung & Motivation Android Applikationen UI-Komponenten Events Ressourcen Kommunikation

Mehr

Labor 1 : Hello, World

Labor 1 : Hello, World Labor 1 : Hello, World Ziel Sie sollten eine neue Applikation Hello, Android erstellen, dessen Startseite, wie folgt, aussieht (siehe Abbildung): 1. Der Name der Applikation ist Hello, Android. (Er wird

Mehr

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

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Ressourcen XML in der Android-Entwicklung zur Definition von Ressourcen Im /res Ordner layout: Definition von Layouts

Mehr

Mobile App Development. - Grafische Oberflächen 2 -

Mobile App Development. - Grafische Oberflächen 2 - Mobile App Development - Grafische Oberflächen 2 - Inhalt Dimensionen Layouting Menüs Activities starten Übung Dimensionen Dimensionen Analog zu Strings und Farben können Dimensionen definiert werden Dimensionen

Mehr

Tutorial. Programmierung einer Android-Applikation. Teil 1

Tutorial. Programmierung einer Android-Applikation. Teil 1 Tutorial Programmierung einer Android-Applikation Teil 1 Autor: Oliver Matle Datum: März 2014, Version 1.0 Autor: Oliver Matle, www.matletarium.de Seite 1 von 28 Inhaltsverzeichnis Kapitel 1 Einleitung...3

Mehr

Mobile App Development - Grafische Oberflächen 2 -

Mobile App Development - Grafische Oberflächen 2 - Mobile App Development - Grafische Oberflächen 2 - Inhalt Dimensionen Layouting Menüs Activities starten Übung Dimensionen Dimensionen Analog zu Strings und Farben können Dimensionen definiert werden Dimensionen

Mehr

Cocktail-Rezepte-APP

Cocktail-Rezepte-APP Application Name: Cocktails Company Domain: gsog.de Empty Activity Main Activity: FindCocktailActivity Layout: activity_find_cocktail Was ist neu??

Mehr

GUI-Programmierung. (5) Das Spielfeld

GUI-Programmierung. (5) Das Spielfeld 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

Mehr

Entwickeln für Android OS

Entwickeln für Android OS Entwickeln für Android OS Am Beispiel der WAPLA Wissenschaftliche Arbeitstechniken und Präsentation Lern Applikation Christian Kain Kevin Kain Wolfgang Kremser Gregor Bankhamer Warum Android? Verbreitung

Mehr

Modellierung einer Android-App. 2. Mai 2013

Modellierung einer Android-App. 2. Mai 2013 Modellierung einer Android-App 2. Mai 2013 Taentzer Software-Praktikum 2013 42 Überblick Modellierung der wesentlichen Aspekte Welche Anwendungsfälle haben wir? Übersicht durch Anwendungsfalldiagramme

Mehr

Einführung in Android (2) 16. Dezember 2014

Einführung in Android (2) 16. Dezember 2014 Einführung in Android (2) 16. Dezember 2014 Überblick Entwicklung der Benutzeroberfläche Views Layouts Menüs Listen und Adapter Einbinden weiterer Ressourcen Aktivierung von Activities Entwicklungsrichtlinien

Mehr

Einführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter

Einführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter Einführung in die Android App-Entwicklung Patrick Treyer und Jannis Pinter Agenda Was ist Android? Android Versionen Layout, Strings und das Android Manifest Activities, Intents und Services Entwicklungsumgebung

Mehr

6 Oberflächen und Daten

6 Oberflächen und Daten 111 6 Oberflächen und Daten Nachdem wir nun viel über die Gestaltung von Oberflächen und den Zugriff auf Views gelernt haben, möchten wir in diesem Kapitel zeigen, wie man Bildschirmseiten mit Daten aus

Mehr

Android Programmierung mit Java Studiengang MI

Android Programmierung mit Java Studiengang MI Android Programmierung mit Java Studiengang MI Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://mwilhelm.hs-harz.de Raum 2.202 Tel.

Mehr

Android Programmierung mit Java Studiengang MI

Android Programmierung mit Java Studiengang MI Android Programmierung mit Java Studiengang MI Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://mwilhelm.hs-harz.de Raum 2.202 Tel.

Mehr

Einführung in Android

Einführung in Android Einführung in Android FH Gießen Friedberg 12. Oktober 2010 Inhalt Historie / Prognosen / Trends Grundlagen Entwicklungsumgebung Standardbeispiel Erweitertes Beispiel Übung / Quellen 2 Grundlagen - Historie

Mehr

Android User Interface

Android User Interface Android User Interface Eine Einführung Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Ziele heute Arbeitsblatt 2 besprechen (inkl. Repetition)

Mehr

2. GUI-Programmierung für mobile Geräte

2. GUI-Programmierung für mobile Geräte 2. GUI-Programmierung für mobile Geräte Lernziele 2. GUI-Programmierung für mobile Geräte Themen/Lernziele: Einführung Lebenszyklus einer Android-Anwendung Beispiele GUI-Elemente Einbindung externer Ressourcen

Mehr

Anforderung. View Button. <LinearLayout android:layout_width="match_parent" Layout. <TextView.../> android:orientation="vertical"> LinearLayout

Anforderung. View Button. <LinearLayout android:layout_width=match_parent Layout. <TextView.../> android:orientation=vertical> LinearLayout Activities Views und Layouts Activity Benutzer Interaktion FullScreen UI-Element View und ViewGroup View: Abstrakte Basisklasse für UI-Komponenten (Widgets) ViewGroup: View, Sammlung/Kontainer von Views

Mehr

App Entwicklung mit dem Android SDK

App Entwicklung mit dem Android SDK App Entwicklung mit dem Android SDK Grafische Benutzeroberfläche Dominik Wagner Informatik Sommercamp 2012 23.7.2012 Kurze Übersicht Um ein Layout für eine Android-Anwendung zu definieren schreibt man

Mehr

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

Android - Layout einer Benutzeroberfläche. Leibniz Universität IT Services Anja Aue Android - Layout einer Benutzeroberfläche Leibniz Universität IT Services Anja Aue Hinweise zur Gestaltung der Bildschirmseite Eine Bildschirmseite sollte eine Aufgabe abbilden. Auf einer Bildschirmseite

Mehr

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

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Besprechung der Aufgaben 1) Legen Sie das Android-Projekt HelloWorldApp an so wie es in den vorherigen Folien beschrieben

Mehr

Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org

Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Fachhochschule Münster Labor für Software Engineering luzar@fh-muenster.de www.naviki.org 1 Naviki die Idee www.naviki.org 2 Wie funktioniert

Mehr

Accounts und Kontakte in Android

Accounts und Kontakte in Android Accounts und Kontakte in Android Die letzten Wochen habe ich daran gearbeitet, die Kontakte der AddressTable von Leonardo und mir ins Android Adressbuch zu bringen. Dazu habe ich die AddressManagement-Applikation

Mehr

Android-Ergänzungen. Programmieren in Java

Android-Ergänzungen. Programmieren in Java Android-Ergänzungen zu Programmieren in Java von Fritz Jobst ISBN 978-3-446-41771-7 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-41771-7 sowie im Buchhandel Carl

Mehr

FSBaSc 2007 BE1. Android Umrechner A-UM. Version Datum Beschreibung, Bemerkung Name oder Rolle Erstellung Dokument Holger Schindler

FSBaSc 2007 BE1. Android Umrechner A-UM. Version Datum Beschreibung, Bemerkung Name oder Rolle Erstellung Dokument Holger Schindler FFHS Fernfachhochschule Schweiz FSBaSc 2007 BE1 Prototyp A-UM Klassifizierung * Status ** Projektname Projektabkürzung Projektleiter Auftraggeber Autor Bearbeitende * Nicht klassifiziert, Intern, Vertraulich

Mehr

Java - Menüs und Fragmente. Leibniz Universität IT Services Anja Aue

Java - Menüs und Fragmente. Leibniz Universität IT Services Anja Aue Java - Menüs und Fragmente Leibniz Universität IT Services Anja Aue Menüs Auswahl von verschiedenen Möglichkeiten mit Hilfe von Menüeinträgen. Menüeinträge können Untermenüs öffnen. Definition in einer

Mehr

Übungen zur Android Entwicklung

Übungen zur Android Entwicklung Übungen zur Android Entwicklung Aufgabe 1 Hello World Entwickeln Sie eine Hello World Android Applikation und laden diese auf den Emulator. Leiten Sie hierfür die Klasse android.app.activity ab und entwerfen

Mehr

Android Layouts + Views Android Kurs Stufe 1 (Gelbgurt)

Android Layouts + Views Android Kurs Stufe 1 (Gelbgurt) Android Kurs Stufe 1 (Gelbgurt) Inhaltsverzeichnis 1 Allgemeines... 2 2 Das Layout Grundproblem... 2 3 Alternative Layoutvorgaben... 3 4 XML als Layoutdefinition... 4 4.1 Allgemeine XML Layoutangaben...

Mehr

2. GUI-Programmierung für mobile Geräte

2. GUI-Programmierung für mobile Geräte 2. GUI-Programmierung für mobile Geräte Lernziele 2. GUI-Programmierung für mobile Geräte Themen/Lernziele: Einführung Lebenszyklus einer Android-Anwendung Beispiele GUI-Elemente Einbindung externer Ressourcen

Mehr

Android. 2 24.09.2013 Mobile Systeme - Android

Android. 2 24.09.2013 Mobile Systeme - Android Android 24.09.2013 Android Plattform/Betriebssystem für mobile Endgeräte wie z.b. Smartphones Basiert auf dem Linux Kernel Bis auf grundlegende Prozesse werden alle Anwenden mithilfe einer speziellen JVM

Mehr

Tutorial. Programmierung einer Android-Applikation Notizzettel. Teil 2

Tutorial. Programmierung einer Android-Applikation Notizzettel. Teil 2 Tutorial Programmierung einer Android-Applikation Notizzettel Teil 2 Autor: Oliver Matle Datum: April 2014, Version 1.0 Autor: Oliver Matle, www.matletarium.de Seite 1 von 23 Inhaltsverzeichnis Kapitel

Mehr

Java - Menü und Intent. Leibniz Universität IT Services Anja Aue

Java - Menü und Intent. Leibniz Universität IT Services Anja Aue Java - Menü und Intent Leibniz Universität IT Services Anja Aue Menüs Auswahl von verschiedenen Möglichkeiten mit Hilfe von Menüeinträgen. Menüeinträge können Untermenüs öffnen. Definition des Menüs in

Mehr

Listing- und Abbildungsverzeichnis

Listing- und Abbildungsverzeichnis Hochschule München Fakultät 07 Informatik und Mathematik Seminararbeit Android GUI Entwicklung mit Native Java Verfasser: Stefan Haupt Matrikelnummer: 06479910 Fach: Aktuelle Technologien verteilter Java

Mehr

Mobile App Development. - Einführung -

Mobile App Development. - Einführung - Mobile App Development - Einführung - Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum ca. 10 Wochen

Mehr

App-Entwicklung für Android

App-Entwicklung für Android App-Entwicklung für Android XML / Layouts Hochschule Darmstadt WS15/16 1 Inhalt XML Layouts Layouttypen Dimensions View Element Designs Farben Strings 2 XML XML ist eine Meta-Sprache zur Festlegung der

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

Mehr

Android: Navigation Drawer

Android: Navigation Drawer Prof. Dr. Carsten Vogt,, Feb. 2015 Carsten Vogt,, 2015. Android: Navigation Drawer Prof. Dr. Carsten Vogt Prof. Dr. Carsten Vogt,, Feb. 2015 Carsten Vogt,, 2015. Android: Navigation Drawer 1.) Aussehen

Mehr

Android Apps. Mentoring SS 16. Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016

Android Apps. Mentoring SS 16. Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016 Android Apps Mentoring SS 16 Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016 Wichtige Dateien MainActivity.java activity_main.xml AndroidManifest.xml Die Dateien MainActivity.java,

Mehr

12 Abstrakte Klassen, finale Klassen und Interfaces

12 Abstrakte Klassen, finale Klassen und Interfaces 12 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Android Programmierung. Studiengang MI

Android Programmierung. Studiengang MI Android Programmierung mit Java Studiengang MI Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://mwilhelm.hs-harz.de Raum 2.202 Tel.

Mehr

XML- Sprachfamilie WS 2015/2016

XML- Sprachfamilie WS 2015/2016 XML- Sprachfamilie WS 2015/2016 Wolfgang Putz Inhalt Vorstellung Warum XML: einige XML Anwendungen Die Veranstaltung - Themen und Ziele - Organisatorisches Seite 2 Das Fraunhofer Institut für Experimentelles

Mehr

1 Ein erstes Beispiel

1 Ein erstes Beispiel 3 1 Ein erstes Beispiel In diesem Abschnitt werden wir ein erstes Android-Programm erstellen. Es dient dem schnellen Einstieg in die Programmierung von Android. Dabei handelt es sich um ein Programm zur

Mehr

Gib dem Projekt (z.b.) den Namen MyApplication und klicke auf Next. Der Domain-Name ist beliebig.

Gib dem Projekt (z.b.) den Namen MyApplication und klicke auf Next. Der Domain-Name ist beliebig. Mit Android Studio Seiten mit Text, Bildern Schaltknöpfen generieren, um zu den Seiten und zum Internet navigieren zu können. Stufe 1: Gehe zu http://developer.android.com/sdk/index.html, lade Android

Mehr

5 Oberflächengestaltung

5 Oberflächengestaltung D3kjd3Di38lk323nnm 49 5 Oberflächengestaltung Die Qualität der Programmoberfläche ist ein wichtiges Kriterium für die Akzeptanz durch den Anwender. Schon durch den geschickten Einsatz der bereitgestellten

Mehr

Layouts Übersicht. FrameLayout Vermeiden. TableLayout. LinearLayout. FrameLayout Vermeiden. FrameLayout: Links oben. LinearLayout.

Layouts Übersicht. FrameLayout Vermeiden. TableLayout. LinearLayout. FrameLayout Vermeiden. FrameLayout: Links oben. LinearLayout. Layouts Übersicht FrameLayout Vermeiden Alles links oben Standard Horizontal und vertikal, nebeneinander Verschachteln (kann langsam werden) TableLayout nur für Tabellen GridLayout Geordnetes Layout Neuer

Mehr

Inhaltsverzeichnis. Heiko Mosemann, Matthias Kose. Android. Anwendungen für das Handy-Betriebssystem erfolgreich programmieren ISBN: 978-3-446-41728-1

Inhaltsverzeichnis. Heiko Mosemann, Matthias Kose. Android. Anwendungen für das Handy-Betriebssystem erfolgreich programmieren ISBN: 978-3-446-41728-1 Heiko Mosemann, Matthias Kose Android Anwendungen für das Handy-Betriebssystem erfolgreich programmieren ISBN: 978-3-446-41728-1 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41728-1

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

App Entwicklung für Android Devices

App Entwicklung für Android Devices App Entwicklung Wahlpflichtkurs: Dozent: Referent: Fortgeschrittene Programmierung in Java Prof. Dr. Klinker Sebastian Fox 30.10.2011, Seite 1 Praktische Anwendung von Java Programmierung Java Applets

Mehr

Mobile Systeme Android 07.04.2011

Mobile Systeme Android 07.04.2011 Mobile Systeme Android 07.04.2011 Android Plattform/Betriebssystem für mobile Endgeräte wie z.b. Smartphones Basiert auf dem Linux Kernel Bis auf grundlegende Prozesse werden alle Anwenden mithilfe einer

Mehr

Heiko Mosemann Matthias Kose. Android. Anwendungen für das Handy-Betriebssystem erfolgreich programmieren HANSER

Heiko Mosemann Matthias Kose. Android. Anwendungen für das Handy-Betriebssystem erfolgreich programmieren HANSER Heiko Mosemann Matthias Kose Android Anwendungen für das Handy-Betriebssystem erfolgreich programmieren HANSER Inhaltsverzeichnis 1 Android stellt sich vor 1 1.1 Warum Java? ' 2 1.2 Einschränkungen 3 1.3

Mehr

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ EAD II Übung 5 Graphische Benutzungsoberfläche mit BlueJ Graphische Benutzungsoberfläche (GUI) Fenster, das weitere Komponenten zur Darstellung und Interaktion enthält spezielle Standardbibliotheken erforderlich,

Mehr

Grafische Benutzeroberflächen

Grafische Benutzeroberflächen Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

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

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Intents Activities werden von Objekten der Klasse android.content.intent gestartet Unterscheidung in explizite und implizite

Mehr

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

5 Oberflächengestaltung

5 Oberflächengestaltung 49 5 Oberflächengestaltung Die Qualität der Programmoberfläche ist ein wichtiges Kriterium für die Akzeptanz durch den Anwender. Schon durch den geschickten Einsatz der bereitgestellten Oberflächenelemente

Mehr

Teil I Augmented Learning - Vortragender: Krischan Udelhoven. Teil II Android - Vortragender: Folker Hoffmann

Teil I Augmented Learning - Vortragender: Krischan Udelhoven. Teil II Android - Vortragender: Folker Hoffmann Teil I Augmented Learning - Vortragender: Krischan Udelhoven Teil II Android - Vortragender: Folker Hoffmann Inhalt 1.Warum Android? 2.Was ist Android? 3.Entwicklung mit Android 18. Januar 2010 Android

Mehr

Grafische Benutzeroberflächen

Grafische Benutzeroberflächen Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Aufgabe Ein Benutzer soll zwei Zahlen in ein Programm

Mehr

Definition eigener Views

Definition eigener Views Definition eigener Views Prinzipielle Ansätze: Spezialisierung eines Widgets bei Nutzung der vorhandenen Darstellungsmöglichkeiten z.b. TextView zur formatierten Ausgabe von Fließkommazahlen Layoutdefinition

Mehr

Arbeitsblatt 5 EAD II NetBeans

Arbeitsblatt 5 EAD II NetBeans Arbeitsblatt 5 EAD II NetBeans Graphische Oberfläche für Uhrenanzeige mit NetBeans Für die Einführung in die Verwendung von NetBeans erstellen wir die graphische Oberfläche für die Uhr nun mit NetBeans.

Mehr

Definition eigener Views

Definition eigener Views Definition eigener Views Prinzipielle Ansätze: Spezialisierung eines Widgets bei Nutzung der vorhandenen Darstellungsmöglichkeiten z.b. TextView zur formatierten Ausgabe von Fließkommazahlen Layoutdefinition

Mehr

Android Einführung Fragments Android Kurs Stufe 2 (Orangegurt)

Android Einführung Fragments Android Kurs Stufe 2 (Orangegurt) Android Kurs Stufe 2 (Orangegurt) Inhaltsverzeichnis 1 Fragments... 2 2 Der Life Cycle eines Fragments... 2 3 Die Supportlibrary oder das Problem mit der Version... 3 4 Aufbau der Layouts... 4 5 OnClickListener...

Mehr

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben 18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (

Mehr

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH 1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Einführung in Android. 22. Oktober 2014

Einführung in Android. 22. Oktober 2014 Einführung in Android 22. Oktober 2014 Was ist Android? Software für mobile Geräte: Betriebssystem Middleware Kernanwendungen Android SDK: Tools und APIs zur Entwicklung von Anwendungen auf der Android-Plattform

Mehr

Ein Großteil der zurzeit verbreiteten Android- Phones läuft noch unter einer älteren Version und stellt somit die Error-Reporting-Funktion

Ein Großteil der zurzeit verbreiteten Android- Phones läuft noch unter einer älteren Version und stellt somit die Error-Reporting-Funktion Ein eigenes für Android implementieren Hurra, ein Fehlerreport! Fehler macht jeder. Wer schlau ist, lässt sich jeden Fehler sofort mit allen Daten servieren, die er für die Fehlerreproduktion benötigt.

Mehr

Mobile App Development. - Alarm -

Mobile App Development. - Alarm - Mobile App Development - Alarm - Inhalt Alarme AlarmManger Wake locks 2 Alarm Alarm Oft ist es notwendig eine App zu starten, auch wenn der Benutzer nicht mit ihr interagiert Starten von Activities zu

Mehr

JTable. W. Lang HWR Berlin, SS

JTable. W. Lang HWR Berlin, SS JTable W. Lang HWR Berlin, SS 2014 1 JTable Die Swing-Komponente JTable dient der Darstellung einer zweidimensionalen Tabelle Verwendung häufig im Zusammenhang mit Datenbankanwendungen Im Gegensatz zu

Mehr

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Android - Ressource. Leibniz Universität IT Services Anja Aue

Android - Ressource. Leibniz Universität IT Services Anja Aue Android - Ressource Leibniz Universität IT Services Anja Aue Ressourcen Verwaltung von Informationen zur Benutzeroberfläche ähnlich wie Cascading Style Sheets. Ablage von Strings, Bildern etc. in einer

Mehr

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT?

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT? Java -The Standard Widget Toolkit- Inhaltsverzeichnis 1. Was ist? - Vorteile von - Nachteile von 2. Vorbereitungen für 3. Das erste Programm in 4. Widgets und Styleparameter 5. - Layouts Was ist ein Widget?

Mehr

Seminar Multimediale Werkzeuge Sommersemester 2011

Seminar Multimediale Werkzeuge Sommersemester 2011 Seminar Multimediale Werkzeuge Sommersemester 2011 Dipl.-Ing. Marco Niehaus marco.niehaus@tu-ilmenau.de 09.06.2011 Page 1 Android Development - Installation Java SDK wird benötigt (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Einführung in die Einführung in Android Anwendungsentwicklung

Einführung in die Einführung in Android Anwendungsentwicklung Einführung in die Einführung in Android Anwendungsentwicklung FH Gießen Friedberg 27. Oktober 2010 Inhalt Was bisher geschah / Prognosen Grundlagen Entwicklungsumgebung Beispiel: Notensammler Intents und

Mehr

Software Entwicklung 1. Das Android Framework zur Entwicklung von Apps. Bibliotheken Frameworks. Framework. Annette Bieniusa / Peter Zeller

Software Entwicklung 1. Das Android Framework zur Entwicklung von Apps. Bibliotheken Frameworks. Framework. Annette Bieniusa / Peter Zeller Software Entwicklung 1 Annette Bieniusa / Peter Zeller Das Android Framework zur Entwicklung von Apps AG Softech FB Informatik TU Kaiserslautern Bieniusa/Zeller Software Entwicklung 1 2/ 46 Frameworks

Mehr

Theorie zu Übung 8 Implementierung in Java

Theorie zu Übung 8 Implementierung in Java Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen 1 Kapitel 7 Ziele 2 (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen Benutzung von Vererbung zur Erstellung individueller GUI-Klassen durch Erweiterung

Mehr

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 03 Vererbung, Polymorphie, Sichtbarkeit, Interfaces Clemens Lang T2 11. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/26 Klassen und Objekte Klassen und Objekte

Mehr

Inhaltsverzeichnis. Apps für Android entwickeln

Inhaltsverzeichnis. Apps für Android entwickeln Inhaltsverzeichnis zu Apps für Android entwickeln von Jan Tittel und Jochen Baumann ISBN (Buch): 978-3-446-43191-1 ISBN (E-Book): 978-3-446-43315-1 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43191-1

Mehr

Android Entwicklung. MobileDevCamp Munich 31.10.2009 Markus Junginger. greenrobot_de

Android Entwicklung. MobileDevCamp Munich 31.10.2009 Markus Junginger. greenrobot_de Android Entwicklung MobileDevCamp Munich 31.10.2009 Markus Junginger greenrobot_de Preis Scanner Apps Über mich Erste Android App: 2007 Erstes Mobile Projekt: 2001 10 Jahre Java & Internet Erfahrung 20

Mehr

Einführung in Android. 9. Dezember 2014

Einführung in Android. 9. Dezember 2014 Einführung in Android 9. Dezember 2014 Was ist Android? Software für mobile Geräte: Betriebssystem Middleware Kernanwendungen Android SDK: Tools und APIs zur Entwicklung von Anwendungen auf der Android-Plattform

Mehr

Objektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types)

Objektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass: OOP (Java), 22. Aufzählungstypen 1/20 Objektorientierte Programmierung Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester

Mehr

Programmieren 2 Java Überblick

Programmieren 2 Java Überblick Programmieren 2 Java Überblick 1 Klassen und Objekte 2 Vererbung 4 Innere Klassen 5 Exceptions 6 Funktionsbibliothek 7 Datenstrukturen und Algorithmen 8 Ein-/Ausgabe 9 Graphische Benutzeroberflächen 10

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG MOBILER ANDROID APPS

EINFÜHRUNG IN DIE PROGRAMMIERUNG MOBILER ANDROID APPS EINFÜHRUNG IN DIE PROGRAMMIERUNG MOBILER ANDROID APPS März 2014 Kurs an der Juniorakademie Heidenheim Heinke Hihn Inhaltsverzeichnis Einführung in die Programmierung mobiler Android Apps EINFÜHRUNG IN

Mehr

Anweisungen zur Ablaufsteuerung

Anweisungen zur Ablaufsteuerung Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden

Mehr

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf

Mehr

Android - Interaktion mit dem Benutzer. Leibniz Universität IT Services Anja Aue

Android - Interaktion mit dem Benutzer. Leibniz Universität IT Services Anja Aue Android - Interaktion mit dem Benutzer Leibniz Universität IT Services Anja Aue Activity Bildschirmseite in einer APP. Ablage auf einen Stack. Wenn eine Activity gestartet wird, wird diese oben auf den

Mehr

Benutzeroberflächen. Java Teil 4

Benutzeroberflächen. Java Teil 4 Benutzeroberflächen Java Teil 4 Einleitung Eine grafische Benutzeroberfläche (Graphical User Interface) ermöglicht dem Benutzer die Interaktion mit dem Computer über grafische Symbole. Die GUI haben in

Mehr

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr. Programmieren II Dr. Klaus Höppner Hochschule Darmstadt SS 2008 1 / 22 2 / 22 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische Benutzeroberfläche (engl: Graphical User Interface,

Mehr

14 Abstrakte Klassen, finale Klassen, Interfaces

14 Abstrakte Klassen, finale Klassen, Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr