Views: TextView. Nicht editierbarer Text, z.b. als Label verwendbar. Einige Attribute:

Größe: px
Ab Seite anzeigen:

Download "Views: TextView. Nicht editierbarer Text, z.b. als Label verwendbar. Einige Attribute:"

Transkript

1 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: TextView Nicht editierbarer Text, z.b. als Label verwendbar. Einige Attribute: android:text android:typeface android:textstyle android:textcolor Java-Methode, um den Text zu setzen: settext Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

2 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: ImageView Zeigt ein Bild/Grafik an. Bild wird referenziert durch XML-Attribut android:src mit Referenz auf eine Drawable-Ressource: Dynamisches Ändern des Bildes mit der Methode setimageuri(). Benötigt einen Content-Provider. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

3 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: Buttons Button ist eine Unterklasse von TextView, entspricht dem gewöhnlichen Push-Button Button-Label entspricht android:text ImageButton: Push-Button mit Bild statt Textbeschriftung, abgeleitet von ImageView. Reagieren auf Clicks: setonclicklistener(), Listener muss Interface View.OnClickListener implementieren (siehe Beispiel 2.1). Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

4 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: EditText Editierbares Textfeld, abgeleitet von TextView automatische Rechtschreibunterstützung: android:autotext Großschreibung des ersten Buchstabens: android:capitalize Feld erlaubt nur Ziffern: android:digits Ein- oder mehrzeilige Eingabe? android:singleline Nur numerische Eingaben erlauben: android:numeric Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

5 2. GUI-Programmierung für mobile Geräte Spezielle Views Telefonnummern: android:phonenumber Passwort: android:password Eigene Konsistenzprüfungen mit eigener Implementierung der Schnittstelle InputMethod: android:inputmethod Zugriff auf den Inhalt: gettext() Für einfachen String: gettext().tostring() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

6 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: CheckBox Checked or Unchecked? TextView ist Vorfahr, android:text liefert Label und ist entsprechend veränderbar Java-Methoden: ischecked() setchecked() toggle() Listener-Interface: OnCheckedChangeListener() mit Methode oncheckedchange() Zum setzen des Listener-Objekts: setoncheckedchangelistener() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

7 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: RadioButton und RadioGroup RadioButton ist der einzelne Button, RadioGroup eine Menge von Buttons, von denen höchstens einer im Zustand checked ist. TextView ist Vorfahr von RadioButton Java-Methoden für RadioGroup: check(): prüft, ob ein Button im Zustand checked ist. clearcheck(): Setzt alle Buttons der Gruppe in den Zustand unchecked. getcheckradiobuttonid(): Liefert die ID des einen Buttons der im Zustand checked ist (oder -1). Die RadioButtons innerhalb der Gruppe haben die üblichen Methoden Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

8 2. GUI-Programmierung für mobile Geräte Spezielle Views Views: Allgemeine Eigenschaften Sichtbarkeit kann mit Hilfe von android:visibility geregelt werden visible, invisible, gone Hintergrund: android:background setenabled() und isenabled() für das Ein-/Ausschalten von interaktiven Views (z.b. EditText) Weitere wichtige Java-Methoden: getparent(), getparentoftype(), findviewbyid(), getrootview() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

9 2. GUI-Programmierung für mobile Geräte Spezielle Views LinearLayout Lineare Anordnung der enthaltenen Views, Layouts in Layouts ist möglich Eigenschaften einer LinearLayout-Instanz: Orientierung: horizontale oder vertikale Anordnung android:orientation bzw. setorientation() Füllmodell: für die Horizontale: android:layout width für die Vertikale: android:layout height Legt die Größe für die Layout-Instanz fest: spezifische Dimension z. B. in Pixeln Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

10 2. GUI-Programmierung für mobile Geräte Spezielle Views wrap content: natürliche Größe, evtl. Zeilen oder Spaltenumbruch erforderlich fill parent: Der ganze verfügbare Platz wird ausgefüllt Relative Größenangaben: Bei Verwendung von fill parent: Mit Hilfe von android:layout weight kann ein Anteil für die Größe auf dem Schirm festgelegt werden. Ausrichtung: layout gravity bestimmt die Ausrichtung der enthaltenen Views left, center horizontal, center vertical, right, Zwischenraum: Mit Hilfe der Padding-Attribute kann zusätzlicher Zwischenraum eingefügt werden. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

11 2. GUI-Programmierung für mobile Geräte Spezielle Views TableLayout TableLayout unterstützt die Positionierung von Komponenten in einem Gitter ähnlich einer HTML-Table. Zu TableLayout gehört TableRow zur Definition einer Tabellenzeile. In TableRow sind die GUI-Komponenten enthalten. Die Anzahl der Spalten wird automatisch bestimmt. Eine Komponente in einer Zeile kann mehrere Spalten umfassen. Hierzu dient das Attribut android:layout span. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

12 2. GUI-Programmierung für mobile Geräte Spezielle Views Eine Komponente kann auch explizit in eine Spalte gesetzt werden. android:layout column. Tabellenzeile über drei Spalten: <TableRow> <TextView android:text="url:"/> <EditText android:layout_span="3"/> </TableRow> Buttons in Spalte zwei und drei: <TableRow> <Button android:layout_column="2" android:text="cancel" /> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

13 2. GUI-Programmierung für mobile Geräte Spezielle Views <Button android:text="ok"/> </TableRow> Komponenten, die außerhalb von TableRow deklariert werden, verhalten sich ähnlich wie LinearLayout (mit Ausrichtung vertical und fill parent). Dies kann man für die Definition von Trennelementen nutzen: <TableRow>... </TableRow> <View android:layout_height="2px" android:background="#0000ff"/> <TableRow>... </TableRow> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

14 2. GUI-Programmierung für mobile Geräte Spezielle Views Dehnbare Spalten in TableLayout Standard: Spalten erhalten natürliche Größe auf Basis der enthaltenen Komponenten Zur Ausdehnung von Spalten auf die volle mögliche Größe: android:stretchcolumns Attributwert: Spaltennummer oder Kommaliste von Spaltennummern android:shrinkcolumns um durch Zeilenumbruch Spalten zu verschmälern Spalten zunächst unsichtbar: android:collapsecolumns Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

15 2. GUI-Programmierung für mobile Geräte Spezielle Views Java-Methoden zur Kontrolle: setcolumnsstretchable() setcolumnsshrinkable() setcolumnscollapsed() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

16 2. GUI-Programmierung für mobile Geräte Spezielle Views Scrolling ScrollView stellt für die enthaltenen Views Scrolling bereit: <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" <TableLayout...> <TableRow...> </TableRow>... <TableRow...> </TableRow> </TableLayout> </ScrollView> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

17 2. GUI-Programmierung für mobile Geräte Log Messages Log Messages Die Klasse android.util.log stellt Klassenmethoden für das Logging bereit: Log.e(): Fehler Log.w(): Warnungen Log.i(): Informationen Log.d(): Debugging Log.v(): Verbose Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

18 2. GUI-Programmierung für mobile Geräte Log Messages Alle Methoden erwarten als Parameter zwei Strings: Ein Tag für die Quelle der Nachricht/Meldung Die Nachricht/Meldung Man kann sich die Meldungen mit der LogCat View in Eclipse anschauen oder durch Aufruf des Programms logcat auf dem Gerät/Emulator. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

19 2. GUI-Programmierung für mobile Geräte Listen Auswahlkomponenten Übliche Auswahlkomponente: ListView Wie üblich einbettbar in Layout-Komponenten Kontrolle der Anzeige mit Hilfe eines Adapters Einfachster Adapter: ArrayAdapter Listener für Auswahl Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

20 2. GUI-Programmierung für mobile Geräte Listen Adapter public interface Adapter Ein Adapter realisiert eine Verbindung zwischen einer AdapterView und den Daten, die die View präsentieren soll. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

21 2. GUI-Programmierung für mobile Geräte Listen ArrayAdapter Generischer Typ: ArrayAdapter<T> Konstruktorargumente: Kontext (typischerweise Activity), View-ID für Listenelemente, Array Methoden um das Datenarray zu manipulieren: add() clear() insert() remove() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

22 2. GUI-Programmierung für mobile Geräte Listen Skizze: String[] items = { "eins", "zwei", "drei" }; ArrayAdapter<String> aa; aa = new ArrayAdapter<String>(myActivity, android.r.layout.simple_list_item_1, items); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

23 2. GUI-Programmierung für mobile Geräte Listen Weitere Adapter CursorAdapter: Für Daten, die von einem Content Provider bereitgestellt werden SimpleAdapter: Zugriff auf Daten aus XML-Ressourcen ActivityAdapter: Namen von Activities, die für einen Intent aufgerufen werden können Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

24 2. GUI-Programmierung für mobile Geräte Listen ListView Muss mit Adapter verbunden werden: setadapter() Schnittstelle für Listener: AdapterView.OnItemClickListener Zu implementierende Methoden: public void onitemclick(adapterview parent, View v, int position, long id); Listener setzen: setonitemclicklistener() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

25 2. GUI-Programmierung für mobile Geräte Listen Beispiel: ListView Beispiel 2.2. Statischen Liste in Verbindung mit einer TextView für die Anzeige des ausgewählten Elements Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

26 2. GUI-Programmierung für mobile Geräte Listen ListActivity Für eine Activity, die durch eine Liste dominiert wird: ListActivity Hier ist die ListView schon integriert. Setzen der Daten bzw. des Adapters: setlistadapter() Zur Behandlung einer Auswahl: Überschreiben der Methode public void onlistitemclick(listview parent, View v, int position, long id); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

27 2. GUI-Programmierung für mobile Geräte Listen Weitere Auswahlkomponenten Spinner: Anzeige des ausgewählten Elements in Kombination mit einer Drop-Down Liste GridView: Zweidimensionale Auswahlmatrix Gallery: Horizontales Auswahlelement Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

28 2. GUI-Programmierung für mobile Geräte Tabbed Layouts Tabbed Layouts TabHost: Container für die Tab-Buttons und die Inhalte der Tabs TabWidget: implementiert die Zeile für die Tab-Buttons FrameLayout: Container für die Tab-Inhalte Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

29 2. GUI-Programmierung für mobile Geräte Tabbed Layouts Regeln für Tabbed Layouts ID für TabWidget sein. Padding für die Tab-Buttons im Frame-Layout Falls man TabActivity benutzen möchte, muss TabHost die haben. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

30 2. GUI-Programmierung für mobile Geräte Tabbed Layouts <LinearLayout...> <TabHost <TabWidget /> <FrameLayout android:paddingtop="62px"> <View.../>... <View.../> </FrameLayout> </TabHost> </LinearLayout> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

31 2. GUI-Programmierung für mobile Geräte Tabbed Layouts Zusammenfügen der Tabs Aufruf der Methode setup() auf dem TabHost Erzeugung von TabHost.TabSpec-Objekten mittels newtabspec(). Damit werden die Tabs definiert. setcontent() um den Inhalt für ein Tab festzulegen setindicator() für den Text des Tab-Buttons addtab() auf dem TabHost um den Tab hinzuzufügen setcurrenttab() um den aktuellen Tab einzustellen Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

32 2. GUI-Programmierung für mobile Geräte Tabbed Layouts Beispiel: Tabs Beispiel 2.3. Anwendung mit zwei Tabs, einer Uhr und einem Button Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

33 2. GUI-Programmierung für mobile Geräte Menüs Menüs Android kennt drei Arten von Menüs: Options Menu Erscheint, wenn der Menü -Knopf des Gerätes bedient wird; Menüs sind abhängig von der Activity. Context Menu Beziehen sich auf eine View, erscheinen durch taps-and-hold Sub Menus Keine Unterstützung von Icons oder Menüschachtelung Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

34 2. GUI-Programmierung für mobile Geräte Menüs Für Menüs gilt allgemein: Keine volle Kontrolle durch den Entwickler Handling im Framework enthalten Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

35 2. GUI-Programmierung für mobile Geräte Menüs Menu Item Für jeden Menüeintrag (MenuItem) muss angegeben werden: Gruppenwert für eine eventuelle Gruppierung (ansonsten Menu.NONE) Eindeutige Kennung (typischerweise Menu.FIRST+N) Wert für die Sortierung der Menüeinträge Menütext Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

36 2. GUI-Programmierung für mobile Geräte Menüs Options Menu Keine Konstruktion des Menüs als Objekt! Stattdessen: Überschreiben von oncreateoptionsmenu() Methode liefert über Parameter ein Menüobjekt, das manipuliert werden kann. Methode add() um Menüeinträge hinzuzufügen. Liefert ein MenuItem. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

37 2. GUI-Programmierung für mobile Geräte Menüs Weitere Einstellung mit MenuItem möglich, z.b. seticon() Für die Selektion benötigen die Menüeinträge Kennungen, ideal hierfür die Konstante Menu.FIRST Für das Abfangen der Auswahl ist kein Listener erforderlich, stattdessen überschreiben der Methode public boolean onoptionsitemselected(menu.item item) Methode getitemid() von MenuItem liefert die Kennung des ausgewählten Menüeintrags. Rückgabewert gibt an, ob Auswahl komplett behandelt wurde Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

38 2. GUI-Programmierung für mobile Geräte Menüs Dynamische Anpassung des Option Menu Dynamische Anpassung des Menüs durch Überschreiben von public boolean onprepareoptionsmenu(menu menu) Wird immer aufgerufen, bevor ein Options Menu angezeigt wird. Für Referenz auf den Menüeintrag: finditem() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

39 2. GUI-Programmierung für mobile Geräte Menüs Beispiel: Options Menu Beispiel 2.4. Anwendung mit Options Menu zur Erzeugung von Dialogs (About, Help), zu Dialog siehe folgende Folien Siehe Folie 105 und Folie 113 Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

40 2. GUI-Programmierung für mobile Geräte Menüs Context Menu Kontext: View, die aktuell den Focus hat Menü kann an der View-Klasse hängen: Überschreiben der Methode: protected void oncreatecontextmenu(contextmenu menu); Menü kann aber auch spezifisch für eine Activity sein: rufe Methode registerforcontextmenu() einer Activity auf Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

41 2. GUI-Programmierung für mobile Geräte Menüs Für registrierte Views wird die folgende Methode aufgerufen, wenn das Context Menu angezeigt werden soll: public void oncreatecontextmenu(contextmenu menu, View v, ContextMenu.ContextMenuInfo menuinfo); Handling einer Auswahl durch Überschreiben der folgenden Activity- Methode: public boolean oncontextitemselected(menuitem item); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

42 2. GUI-Programmierung für mobile Geräte Menüs Menu Item Click Listener Alternative zum Überschreiben der Activity-Methoden für Click-Listening bei Menüs: Schnittstelle OnMenuItemClickListener Aufruf erfolgt auf dem erzeugten menuitem Methode zum Setzen: setonmenuitemclicklistener() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

43 2. GUI-Programmierung für mobile Geräte Menüs Einfache Implementierung mit anonymer Klasse: menuitem.setonmenuitemclicklistener(new OnMenuItemClickListener() { public boolean onmenuitemclick(menuitem menuitem) {... return true; } }); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

44 2. GUI-Programmierung für mobile Geräte Dialogs Dialogs und Pop-Up Messages Ein Dialog ist ein transparentes Fenster, das eine andere Activity teilweise überdeckt. Möglichkeiten, einen Dialog zu erzeugen: Eine von Dialog abgeleitete Klasse verwenden, z.b. AlertDialog Theme-Attribut einer Activity auf Theme.Dialog einstellen Toasts: Kleine sich selbst auflösende Nachrichtenfenster Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

45 2. GUI-Programmierung für mobile Geräte Dialogs AlertDialog Titel: settitle() Icon: seticon() Text/Nachricht: setmessage() Bis zu drei Buttons: Postive, Negative, Neutral setpositivebutton(),... Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

46 2. GUI-Programmierung für mobile Geräte Dialogs AlertDialog.Builder Klasse zur automatischen Erzeugung eines AlertDialogs. Bietet die Methoden der vorigen Folie Skizze zur Nutzung: AlertDialog.Builder ad = new AlertDialog.Builder(activity); ad.settitle(...)... ad.setneutralbutton(r.string.ok, new DialogInterface.OnClickListener() public void onclick(dialoginterface dialog, int id) {... }}); return ad.create(); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

47 2. GUI-Programmierung für mobile Geräte Dialogs Verbindung mit Activity Jeder Dialog erhält eine eindeutige Kennung. showdialog(dialogid) um einen Dialog anzuzeigen Wenn Dialog erzeugt werden muss, erfolgt Aufruf der Activity-Methode: public Dialog oncreatedialog(int id) In Methode typischerweise switch zur Erzeugung des passenden Dialogs (z.b. mittels AlertDialog.Builder). Vor dem Anzeigen erfolgt Aufruf der Activity-Methode: Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

48 2. GUI-Programmierung für mobile Geräte Dialogs public void onpreparedialog(int id, Dialog dialog) Damit Anpassung an Situation möglich. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

49 2. GUI-Programmierung für mobile Geräte Dialogs Activities als Dialogs Eine Activity kann in Form eines Dialog realisiert werden. Vorteil: alle Möglichkeiten zur Implementierung Nachteil: Einfache Handhabung der Dialog-Klasse geht verloren <activity android:name="mydialogactivity" </activity> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

50 2. GUI-Programmierung für mobile Geräte Dialogs Toasts Ein Toast ist eine kleine Dialogbox, die eine Textnachricht anzeigt und nach wenigen Sekunden automatisch verschwindet. Skizze zur Nutzung: Toast toast = Toast.makeText(context, "Meine Nachricht", Toast.LENGTH_SHORT); toast.show(); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

51 2. GUI-Programmierung für mobile Geräte Dialogs Beispiel: Dialog und Toast Beispiel 2.5. Anwendung mit zwei Buttons: einer zur Erzeugung eines Dialog, einer zur Erzeugung eines Toast Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

52 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Widgets für Datum und Uhrzeit Datumsauswahl DatePicker, DatePickerDialog Uhrzeitauswahl TimePicker, TimePickerDialog Zeitanzeige AnalogClock, DigitalClock Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

53 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Datumsauswahl Widget für die Datumsauswahl: DatePicker Datum kann eingestellt werden Für die Verwaltung von Zeitstempeln (Datum + Uhrzeit): Calendar Widget verpackt in einem Dialog: DatePickerDialog Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

54 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Listener für DatePicker Listener-Schnittstelle: DatePicker.OnDateSetListener mit Methode: public void dateset(datepicker view, int year, int month, int day); Listener steht auch für DatePickerDialog zur Verfügung. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

55 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Auswahl einer Uhrzeit Widget für die Datumsauswahl: TimePicker Uhrzeit kann eingestellt werden Für die Verwaltung von Zeitstempeln (Datum + Uhrzeit): java.util.calendar Formatierung von Zeitstempeln: java.text.dateformat Widget verpackt in einem Dialog: TimePickerDialog Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

56 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Listener für TimePicker Listener-Schnittstelle: TimePicker.OnTimeSetListener mit Methode: public void timeset(timepicker view, int hour, int minute); Listener steht auch für TimePickerDialog zur Verfügung. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

57 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Beispiel: DatePicker und TimePicker Beispiel 2.6. Layout mit zwei Buttons und einer TextView Mit Hilfe der beiden Buttons wird ein DatePickerDialog bzw. ein TimePickerDialog angezeigt. Das ausgewählte Datum bzw. die ausgewählte Uhrzeit wird in die TextView übernommen. Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

58 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Anzeige der Uhrzeit analoge Uhr: AnalogClock nur Stunden- und Minutenzeiger digitale Uhr: DigitalClock zeigt auch Sekunden an Anpassung an Landeseinstellung Uhrzeit wird automatisch angepasst, kein Listener/Updater erforderlich Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

59 2. GUI-Programmierung für mobile Geräte Widgets für Datum und Uhrzeit Beispiel: Uhrzeit Beispiel 2.7. Uhrzeit analog und digital Reine Layout-Definition, keine weitere Programmierung erforderlich Layout siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

60 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Einbettung des Web-Browsers Einbettung des Standard-Browsers in eigene Anwendungen Browser basiert auf WebKit Klasse: WebView eigenes Package: android.webkit mit vielen weiteren Klassen Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

61 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Beispiel: WebView Beispiel 2.8. Simples Layout mit einer WebView Laden einer Seite mit Hilfe der Methode loadurl() Siehe Homepage Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

62 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Permission Für den Webzugriff ist eine Uses Permission notwendig. Einzutragen in AndroidManifest.xml: <uses-permission android:name="android.permission.internet"> </uses-permission> Kann mit Hilfe des Manifest-Editors eingetragen werden. Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

63 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Anzeigen von Inhalten Daten können mit folgenden Methoden geladen werden: loadurl(string url) loaddata(string data, String mimetype, String encoding) Zum setzen einer Basisadresse für den Inhalt: loaddatawithbaseurl(...) Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

64 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Navigation Navigationsfunktionalität muss selbst implementiert werden. Methoden hierfür: reload() goback() goforward() cangobackorforward() clearcache(), clearhistory() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

65 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Reaktion auf Benutzeraktionen Mit einem WebViewClient kann auf Benutzeraktionen reagiert werden. Methode setwebviewclient() um den WebViewClient bei der WebView zu registrieren. Reaktion durch Überschreiben von Methoden im WebViewClient. Beispiel: shouldoverrideurlloading() zur Reaktion auf interne URLs Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

66 2. GUI-Programmierung für mobile Geräte Einbettung des Web-Browsers Einstellungen erfolgen mit einer Instanz von WebSettings, Instanz wird erzeugt durch getsettings() auf WebView Beispielmethoden: Einstellung von Fontgrößen: setdefaultfontsize() und settextsize() JavaScript: setjavascriptenabled() UserAgent: setusedesktopuseragent() Einstellungen sind nicht persistent Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

67 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Arten von Ressourcen Vgl. Folie 43 (simple) values drawables (Zeichnungen) layouts Animationen sonstige XML-Dateien Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

68 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Styles raw resources (sonstige Dateien) Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

69 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Einfache Konstanten (simple values) Werden definiert in unterschiedlichen XML-Dateien im Verzeichnis res/values. Arten: Strings Farben Dimensionen Arrays Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

70 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Strings res/values/strings.xml <?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">hello World</string> <string name="app_name">beispiel WebView</string> </resources> Einfache HTML-Textformatierung wird unterstützt durch folgende Tags: <b>, <i> und <u> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

71 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Prinzipiell können solche Strings auch als Formatstring für z. B. String.format() verwendet werden. Hierbei wird aber keine HTML- Textformatierung unterstützt. Deshalb: HTML-Tags kodieren Nach Formatierung mit String.format() noch Html.fromHtml() anwenden. Ressource-ID: z.b. R.string.hello Zugriff über Activity- bzw. Context-Methoden: getstring() und gettext() Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

72 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Farben res/values/colors.xml Muster zur Definition von Farben: #RGB, #RRGGBB, #ARGB, #AARRGGBB <color name="opaque_blue">#00f</color> <color name="transparent_green">#7700ff00</color> Ressource-ID: z.b. R.color.opaque blue blue Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

73 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Dimensionen px: Bildschirmpixel in: Inches pt: Points mm: Millimeter dp: Dichteunabhängige Pixel bezogen auf einen 160-dpi Bildschirm sp: Skalierungsunabhängige Pixel Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

74 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Definitionen üblicherweise in res/values/dimensions.xml:... <dimen name="standard_border">5px</dimen>... Referenzierung: R.dimen.standard border border Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

75 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Arrays res/values/arrays.xml String-Array mit zwei Elementen: <string-array name="cursor_forms"> <item>block Cursor</item> <item>outline Cursor</item> </string-array> array vs. string-array? Referenzierung: R.array.cursor forms forms Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

76 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen Zugriff auf Ressourcen Dynamischer Zugriff auf Ressourcen vom Programm aus: Mit Hilfe einer Instanz der Klasse Resources Context bzw. Activity liefert eine solche Instanz als Ergebnis der Methode getresources(). Resources myresources = getresources(); Resources bietet spezifische Methoden um auf die Ressourcen über die ID zuzugreifen. int opaqueblue = myresources.getcolor(r.color.opaque_blue); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

77 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen float borderwidth = myresources.getdimension(r.dimen.standard_border); String[] cursorforms = myresources.getstringarray(r.array.cursor_forms); Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

78 2. GUI-Programmierung für mobile Geräte Einbindung von Ressourcen System-Ressourcen Android stellt eine Reihe von eingebauten Ressourcen zur Verfügung. Im Quelltext erfolgt der Zugriff mit Hilfe der ID android.r...: String httperror = getstring(android.r.string.httperrorbadurl); Innerhalb von Ressourcen lautet die <EditText... /> Mobile Informationssysteme I Hochschule Bonn-Rhein-Sieg, Sommersemester

Mobile Informationssysteme I

Mobile Informationssysteme I Mobile Informationssysteme I Peter Becker Hochschule Bonn-Rhein-Sieg Fachbereich Informatik peter.becker@h-brs.de Vorlesung Sommersemester 2010 Allgemeines zur Vorlesung Vorbemerkungen Homepage zur Veranstaltung:

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

Ü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

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

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

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

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

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

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

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

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

2. Hintergrundverarbeitung in Android: Services und Notifications

2. Hintergrundverarbeitung in Android: Services und Notifications 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services

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

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

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

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

5.5 Schaltflächen und Menüs

5.5 Schaltflächen und Menüs 68 5 Oberflächengestaltung Texte definieren Um die Verweise auf Ressourcen aufzulösen, definieren wir die Texte in der Datei /res/values/strings.xml. Dort legen wir die folgenden Einträge an:

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

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

Anforderung. View Button. 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

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

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

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

Szenario 3: Service mit erweiterter Schnittstelle

Szenario 3: Service mit erweiterter Schnittstelle 2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich

Mehr

3. Persistenz und Datenbanken Content Providers. Content Providers. Generische Schnittstelle zum Zugriff auf Daten zwischen Anwendungen

3. Persistenz und Datenbanken Content Providers. Content Providers. Generische Schnittstelle zum Zugriff auf Daten zwischen Anwendungen Content Providers Generische Schnittstelle zum Zugriff auf Daten zwischen Anwendungen Entkopplung der Daten-Schicht von der Anwendungsschicht Zugriff erfolgt URI-basiert Kontrolle der Zugriffsrechte eingebaute

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

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

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 Inhalt Toast-Meldungen Permissions Sensoren GPS (Global Positioning System) Kamera Anzeigen von Koordinaten auf einer

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

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

Kap. 36. SWING: Menüs. und weitere SWING-Container. Seán Dempsey

Kap. 36. SWING: Menüs. und weitere SWING-Container. Seán Dempsey Kap. 36 SWING: Menüs und weitere SWING-Container Seán Dempsey Grundlagen von Menüs Hauptklasse: JMenuBar SWING- Entsprechung der AWT-Menüklasse MenuBar JMenuBar Menüleiste (JMenuBar) enthält Menüs (JMenu)

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

Erste Erfahrungen mit Android

Erste Erfahrungen mit Android Java User Group München, 22. 9. 2008 Erste Erfahrungen mit Android 1 Was ist Android? Die erste vollständige, offene und freie Plattform für mobile Telefone Entwickelt von der Open Handset Alliance (Telecoms,

Mehr

Swing Lernen am Code Teil 1

Swing Lernen am Code Teil 1 Swing Lernen am Code Teil 1 Swing Fenster erzeugen import java.awt.* import java.awt.event.* import javax.swing.* class SwingDemo{ static JFrame Fenster; public static void main(string[] args){ } } Fenster

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

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

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface.

Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface. Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface. Inhaltsverzeichnis Erste Schritte Anmelden 2 Startseite 3 Dateimanager 4 CargoLink 5 Freigaben 6

Mehr

tentoinfinity Apps 1.0 EINFÜHRUNG

tentoinfinity Apps 1.0 EINFÜHRUNG tentoinfinity Apps Una Hilfe Inhalt Copyright 2013-2015 von tentoinfinity Apps. Alle Rechte vorbehalten. Inhalt der online-hilfe wurde zuletzt aktualisiert am August 6, 2015. Zusätzlicher Support Ressourcen

Mehr

WCF Services in InfoPath 2010 nutzen

WCF Services in InfoPath 2010 nutzen WCF Services in InfoPath 2010 nutzen Abstract Gerade wenn man schreibend von InfoPath aus auf eine SQL-Server Datenbank zugreifen will, kommt man quasi um einen Web Service nicht herum. In diesem Post

Mehr

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6 WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik

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

Grundlagen der Programmierung APPLETS

Grundlagen der Programmierung APPLETS Grundlagen der Programmierung APPLETS Inhalt dieser Einheit Java-Applets: Java-Applets Vor- und Nachteile Sicherheitskonzepte Methoden Einbetten in HTML Graphical User Interface 2 Java Applets Applets

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

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

Windows Presentation Foundation

Windows Presentation Foundation Windows Presentation Foundation WS 2013/14 Steuerelemente - Controls Kategorien von Steuerelementen s.a. http://msdn.microsoft.com/en-us/library/bb613551.aspx http://msdn.microsoft.com/en-us/library/ms754204.aspx

Mehr

5.5.8 Öffentliche und private Eigenschaften

5.5.8 Öffentliche und private Eigenschaften 5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Auffrischung jquery. jquery Mobile. Marco Francke I 24.02.2011

Auffrischung jquery. jquery Mobile. Marco Francke I 24.02.2011 Auffrischung jquery jquery Mobile Marco Francke I 24.02.2011 Mayflower GmbH 2010 write less do more Marco Francke 24. Februar 2011 24.02.11 Mayflower GmbH 2 Mayflower GmbH 2010 Was ist jquery und was kann

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

DOAG Regio 2015 APEX 5 Neuerungen Highlights. Marco Patzwahl

DOAG Regio 2015 APEX 5 Neuerungen Highlights. Marco Patzwahl DOAG Regio 2015 APEX 5 Neuerungen Highlights Marco Patzwahl MuniQSoft GmbH Tätigkeitsbereiche: Oracle Support Hotline: Mo-Fr 8.00 18.00 Uhr Erweiterung um Rufbereitschaft auch am Wochenende möglich Oracle

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

CloudMatic V1.0. Inhalt

CloudMatic V1.0. Inhalt CloudMatic V1.0 Inhalt Einleitung... 2 CCUs hinzufügen... 3 meine-homematic.de... 4 Eigenes VPN... 4 View Editor... 5 Übersicht... 5 Allgemeine Einstellungen... 6 Kanäle hinzufügen... 6 Spezielle Kanäle...

Mehr

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Firefox Add-ons Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Agenda Technisches Überblick XUL JavaScript CSS XPI-Pakete Einreichen bei Mozilla Sicherheitsüberlegungen

Mehr

TYPO3 Redaktoren-Handbuch

TYPO3 Redaktoren-Handbuch TYPO3 Redaktoren-Handbuch Kontakt & Support: rdv interactive ag Arbonerstrasse 6 9300 Wittenbach Tel. 071 / 577 55 55 www.rdvi.ch Seite 1 von 38 Login http://213.196.148.40/typo3 Username: siehe Liste

Mehr

App-Entwicklung für Android

App-Entwicklung für Android App-Entwicklung für Android Menüs & Fragments Hochschule Darmstadt WS15/16 1 Inhalt Arten von Menüs Implementierung und Nutzung von Menüs Was sind Fragments? Implementierung von Fragments Kommunikation

Mehr

Swing :Komponenten I (Teil 2)

Swing :Komponenten I (Teil 2) l Bei Swing handelt es sich um eine Programmierschnittstelle und Grafikbibliothek zum Programmieren von grafischen Benutzeroberflächen l Swing stellt eine Menge von Klassen zur Verfügung l Swing wurde

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:

Mehr

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Tutorial. Bibliothek AutoGUITest V1.0. Windows-Benutzeroberflächen automatisiert testen. Ausgabe: 6.6.02. 06.06.02 / 13:51 Seite 1

Tutorial. Bibliothek AutoGUITest V1.0. Windows-Benutzeroberflächen automatisiert testen. Ausgabe: 6.6.02. 06.06.02 / 13:51 Seite 1 Bibliothek AutoGUITest V1.0 Windows-Benutzeroberflächen automatisiert testen Tutorial Ausgabe: 6.6.02 06.06.02 / 13:51 Seite 1 Inhalt 1 Übersicht...3 2 Funktionsweise...3 3 Funktionsumfang...3 4 Einsatz

Mehr

G-Info Lizenzmanager

G-Info Lizenzmanager G-Info Lizenzmanager Version 4.0.1001.0 Allgemein Der G-Info Lizenzmanager besteht im wesentlichen aus einem Dienst, um G-Info Modulen (G-Info Data, G-Info View etc.; im folgenden Klienten genannt) zentral

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr

Handbuch TweetMeetsMage

Handbuch TweetMeetsMage Handbuch TweetMeetsMage für Version 0.1.0 Handbuch Version 0.1 Zuletzt geändert 21.01.2012 Inhaltsverzeichnis 1 Einleitung... 3 1.1 Voraussetzungen... 3 1.2 Funktionsübersicht... 3 2 Installation... 4

Mehr

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

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Responsive Webdesign vertraut. Es wird

Mehr

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

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

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

Dokumentation: wi://googlemaps

Dokumentation: wi://googlemaps 1 Dokumentation: wi://googlemaps zur Einbindung von eigenen GoogleMaps Karten im TYPO3 Backend 2 Inhalt Einrichtung des Plugins... 3 Schritt 1: Frontend Plugin anlegen... 3 Schritt 2: Speicherort der Datensätze

Mehr

Einem Block können beliebig viele Attribute zugeordnet werden, vorausgesetzt jedes Attribut besitzt eine andere Bezeichnung.

Einem Block können beliebig viele Attribute zugeordnet werden, vorausgesetzt jedes Attribut besitzt eine andere Bezeichnung. Kapitel 4 4 Attribute Attribute sind Beschriftungen oder Bezeichnungen, mit denen Sie einem Block einen Text zuordnen. Jedes Mal, wenn Sie einen Block mit einem variablen Attribut einfügen, werden Sie

Mehr

Erweiterung für Premium Auszeichnung

Erweiterung für Premium Auszeichnung Anforderungen Beliebige Inhalte sollen im System als Premium Inhalt gekennzeichnet werden können Premium Inhalte sollen weiterhin für unberechtigte Benutzer sichtbar sein, allerdings nur ein bestimmter

Mehr

Newssystem für den eigenen Lehrstuhl einrichten

Newssystem für den eigenen Lehrstuhl einrichten Newssystem für den eigenen Lehrstuhl einrichten Zunächst muss unterhalb des Lehrstuhlordners (im Beispiel Schulpädagogik) ein Neuer Ordner config angelegt werden: Der Dateiname des neuen Ordners sollte

Mehr

PG5 Starter Training PG5 Core und Webeditor 8 Daniel Ernst DE02 2013-03-14

PG5 Starter Training PG5 Core und Webeditor 8 Daniel Ernst DE02 2013-03-14 PG5 Starter Training PG5 Core und Webeditor 8 Daniel Ernst DE02 2013-03-14 Einführung Benötigtes Material: Notebook oder Computer PCD1 E-Controller USB Kabel Schulungsplatine Ethernet Kabel Benötigte Software

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

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de EJB Beispiel JEE Vorlesung 10 Ralf Gitzel ralf_gitzel@hotmail.de 1 Stundenkonzept Gemeinsame Übung Stoff der letzten Stunde wird gemeinsam in einem Beispiel umgesetzt Details werden nochmals erklärt bzw.

Mehr

Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager

Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager Homepage-Manager Navigation Home Der Homepage-Manager bietet die Möglichkeit im Startmenü unter dem Punkt Home einfach und schnell

Mehr

Alerts für Microsoft CRM 4.0

Alerts für Microsoft CRM 4.0 Alerts für Microsoft CRM 4.0 Benutzerhandbuch Der Inhalt des Dokuments ist Änderungen vorbehalten. Microsoft und Microsoft CRM sind registrierte Markenzeichen von Microsoft Inc. Alle weiteren erwähnten

Mehr

Content Management System (CMS) Manual

Content Management System (CMS) Manual Content Management System (CMS) Manual Thema Seite Aufrufen des Content Management Systems (CMS) 2 Funktionen des CMS 3 Die Seitenverwaltung 4 Seite ändern/ Seite löschen Seiten hinzufügen 5 Seiten-Editor

Mehr

Abschnitt 9: Schnittstellen: Interfaces

Abschnitt 9: Schnittstellen: Interfaces Abschnitt 9: Schnittstellen: Interfaces 9. Schnittstellen: Interfaces 9.1 Die Idee der Schnittstellen 9.2 Schnittstellen in Java 9.3 Marker-Interfaces 9.4 Interfaces und Hilfsklassen 9.5 Zusammenfassung

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Android-Apps weitere Möglichkeiten

Android-Apps weitere Möglichkeiten Android-Apps weitere Möglichkeiten 2/20 weitere Möglichkeiten Speichern in der Sandbox OnTouchListener Senden und Empfangen von SMS Anbindung von Datenbanken Der Beschleunigungssensor Übung 3/20 Speichern

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

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

TeleBuilder for Process Data

TeleBuilder for Process Data TeleBuilder for Process Data Komponenten für die Lean Web Automation - Benutzeranleitung Version: 1.0 / 15.11.005 Autoren: Dipl.-Ing. S. Karasik Prof. Dr.-Ing. R. Langmann 1. Allgemeine Information Der

Mehr

Zimplit CMS Handbuch. Einführung. Generelle Informationen

Zimplit CMS Handbuch. Einführung. Generelle Informationen Zimplit CMS Handbuch Einführung Dieses Dokument gibt Ihnen einen Überblick über die Nutzeroberfläche des Zimplit CMS (Content Management System) und seinen Funktionen. Generelle Informationen Version:

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

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

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Inhaltsverzeichnis. 2 Abteilungsspezifische Banner 16 2.1 Austausch der Banner... 16 2.2 Hinweis für Entwickler... 17

Inhaltsverzeichnis. 2 Abteilungsspezifische Banner 16 2.1 Austausch der Banner... 16 2.2 Hinweis für Entwickler... 17 Inhaltsverzeichnis 1 Beiträge verwalten 2 1.1 Kategorie erstellen.............................. 2 1.2 Beitrag erstellen................................ 3 1.3 Beitragsberechtigungen verwalten......................

Mehr

MMI 2: Mobile Human- Computer Interaction Übung 2

MMI 2: Mobile Human- Computer Interaction Übung 2 MMI 2: Mobile Human- Computer Interaction Übung 2 Prof. Dr. michael.rohs@ifi.lmu.de Mobile Interaction Lab, LMU München ORGANISATORISCHES 2 Exercises # Date Topic 1 24.10.2011 Mobile usage scenarios 2

Mehr

Der transparente Look. Die Struktur, die oben angegeben wurde, ist im Anwendungsdesigner, wie in der nächsten Grafik ersichtlich, abgebildet.

Der transparente Look. Die Struktur, die oben angegeben wurde, ist im Anwendungsdesigner, wie in der nächsten Grafik ersichtlich, abgebildet. Intrapact Layout Allgemeines Das Layout einer Firma wird im Intrapact Manager, und dort im Layout Designer erstellt. Alle Eingaben im Layout Designer dienen dazu um die CSS/ASP Dateien zu generieren, die

Mehr

Applets I. Grundlagen der g Applet-Programmierung

Applets I. Grundlagen der g Applet-Programmierung Applets I Grundlagen der g Applet-Programmierung 2 Inhalt Applets Was sind Applets Entwicklung Grundlagen Zustandssteuerung eines Applets Methoden zum Nachrichtentransfer Soundausgabe Animation Einbindung

Mehr

CC Modul Leadpark. 1. Setup 1.1 Providerdaten 1.2 Einstellungen 1.3 Qualifizierungsstati 1.4 Reklamationsstati 1.5 Design 1.

CC Modul Leadpark. 1. Setup 1.1 Providerdaten 1.2 Einstellungen 1.3 Qualifizierungsstati 1.4 Reklamationsstati 1.5 Design 1. CC Modul Leadpark 1. Setup 1.1 Providerdaten 1.2 Einstellungen 1.3 Qualifizierungsstati 1.4 Reklamationsstati 1.5 Design 1.6 Dateien 2. Mein Account 2.1 Shortcutmenü 2.2 Passwort 2.3 E-Mail 2.4 Daten 3.

Mehr

3. Erfassung und Verarbeitung von Sensordaten

3. Erfassung und Verarbeitung von Sensordaten 3. Erfassung und Verarbeitung von Sensordaten Lernziele 3. Erfassung und Verarbeitung von Sensordaten Lernziele: Typische in mobilen Geräten enthaltene Sensorarten kennen, Daten von solchen Sensoren empfangen

Mehr