Haupttitel der Präsentation

Slides:



Advertisements
Ähnliche Präsentationen
Vererbung Spezialisierung von Klassen in JAVA möglich durch
Advertisements

Android-App/NerdKalender
Aufgaben Version 1: Es soll eine Wetterstation mit folgenden zwei Anzeigen implementiert werden: Aktuelle Wetterbedingungen mit Temperatur und.
Programmbereich, zu dem eine Deklaration gehört Arten von Gültigkeitsbereichen -Namespace : Deklarationen von Klassen, Interfaces, Structs, Enums, Delegates.
Wien Fotos, Audio und Video Multimedia in Android.
Wien Oberflächengestaltung und Gestensteuerung Styles, ActionBar und Gestensteuerung.
Seminarvortrag Entwicklung mobiler Applikationen mit Android Moritz Hübner Lehrstuhl für Medizintechnik Helmholtz-Institut.
Bewerbungs- eingang Bewerbungs- bearbeitung Stellenangebote VermittlungKommunikationZusatzleistungen.
By Thorsten Zisler 1 SQL Datenbank Anbindung an den Supervisor.
CMS … Content Management System. Erster Schritt Das CMS funktioniert (leider) nicht mit allen Browsern. Eine fehlerfreie Bearbeitung ist mit Mozilla firefox.
Einstellungen in Skype sind unter “Aktionen” in der Navigation zu finden. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
J Walk/GUI400 für Einsteiger Client Win95, Win98, WinNT © NewServ AG, Uitikon Installationsvorgang.
1 freedroidz – spielend Programmieren lernen. 2 Was ist freedroidz?
Mit dem Computer kann man ganz toll präsentieren
Einführung in PowerPoint
Anforderungen an die neue Datenstruktur
Microsoft® Office SharePoint® Server 2007-Schulung
SurveyCAU Handbuch - Studierende-.
Java-Kurs Übung Grafik in Java - das Abstract Windowing Toolkit
Schüco International KG
Titel der Präsentation
20 Chargenumbuchung
Ein Dokument mit Störmuster-Text erstellen Das bearbeitbare Dokument besteht aus drei übereinanderliegenden Textfeldern. Um den Slogan zu verändern muss.
Allgemeine Befehle für die allgemeine Liste
Create Table, Rechte und Rollen
Anleitung für Administratoren
Anleitung für Administratoren
Haupttitel der Präsentation
Haupttitel der Präsentation
Bilsdchirmpräsentation
Office Excel Version 2007.
Herzlich Willkommen Präsentation für das Angebot «einfache Verlinkung»
Hinweise zur Verwendung der PowerPoint Vorlage
Anpassen von Microsoft SharePoint Onlinewebsite
Titel der Präsentation
“<Titel>” Prozessbeschreibung
Mehr Möglichkeiten mit der SQL-Version
Lesen Sie alles darüber Microsoft SharePoint-News
Lesen Sie alles zu Microsoft SharePoint-News
Pivot-Tabellen und SVERWEIS
Die PowerPoint-Arbeitsfläche
Templates
Deutsche Sporthochschule Köln
Interaktives Präsentieren
Titel der Präsentation
Titel der Präsentation
Titel der Präsentation
Titel der Präsentation
Titel der Präsentation
Raphael Fischer Informatik II - Übung 08 Raphael Fischer
Herzlich willkommen zum Tutorial:
Titel der Präsentation
Titel der Präsentation
Datensicherung.
in PowerPoint 7 Wege zur Zusammenarbeit
Versuchstiermeldung 2018 Hinweise zum Ausfüllen der Excel Tabelle
2. Vererbung und Kapselung
«Delegierter» Methoden Schablone Funktionszeiger
1. Die rekursive Datenstruktur Liste 1
9. Vererbung und Polymorphie
Gräser schrittweiser Aufbau des Tafelbildes vollständige Ansicht
Präsentation von Darleen und Michèle
Google-Kalender Präsentation:
Organisationsfähigkeit Ausgewählte Folien für Lehreinheit C2
Wissenschaftliches Projekt
Informatik Softwareentwicklung – 4.3 Entwurfsmuster
Nutzung und Modellierung von Datenbanken
50 zeitsparende Outlook-Tastenkombinationen
„Wege für zugewanderte Frauen in den Arbeitsmarkt“
RGB-LED Projekt INGOLSTADT.
 Präsentation transkript:

Haupttitel der Präsentation 15.09.2018 WIFI Bundesland

Grundlagen Widgets sind Elemente auf dem „Android-Desktop“, dem Home Screen Widgets bieten die Möglichkeit den Benutzern Informationen der App zu liefern Kurzinfos Anzahl versäumte Anrufe, ungelesene Mails, … Aktualisierte Daten Temperatur eines bestimmten Ortes, … Ansicht von gefilterten Daten To-Dos aus Liste mit Priorität „sehr hoch“ Kalendereinträge des aktuellen Tages Viele Widgets sind mit einer Applikation verknüpft, andere stehen für sich selber Da „Widget“ die Superklasse von z.B. Buttons ist, werden „Home Screen Widgets“ eigentlich „AppWidgets“ genannt

Umsetzung von AppWidgets sind BroadcastReceiver verwenden RemoteViews Drei Komponenten notwendig Layout für GUI (empfohlen XML, programmatisch möglich) XML mit Meta-Daten BroadcastReceiver zur Kontrolle des AppWidgets Layout-Größe HomeScreen ist ein Raster, Widgets sind ein oder mehrere Zellen dieses Rasters groß Größe wird gerundet, ca. Formel ist Höhe = 70dp * zellen – 30dp (1 Zelle = 40 dp, 2 Zellen = 110 dp)

Layout von Widgets Einsatz von Views und Layouts vor allem aufgrund von Sicherheit (AppWidget läuft im Kontext Home Screen) stark eingeschränkt Zugelassene Layouts sind FrameLayout, LinearLayout, RelativeLayout, GridLayout Erlaubte Views sind AnalogClock, Button, Chronometer, ImageButton, ImageView, ProgressBar, TextView, ViewFlipper <LinearLayout […]> <TextView android:id="@+id/widget_text1" […]/> <TextView android:id="@+id/widget_text2" […]/> <Button android:id="@+id/widget_button1" […]/> </LinearLayout>

Meta-Daten von AppWidgets Im Ordner res/xml gespeicherte XML-Datei WICHTIG: Tag appwidget-provider mit sämtlichen wichtigen und notwendigen Daten für das Widget <?xml version ="1.0" encoding ="utf-8"?> <appwidget-provider android:initialLayout="@layout/widget_layout" -> Verweis auf XML android:minWidth="40dp" android:minHeight="40dp" -> min Höhe/Breite android:label="Mein erstes Widget!" -> Beschriftung für die Übersicht android:updatePeriodMillis="360000" -> Wie oft aktualisieren? android:resizeMode="none" -> Größe änderbar? (horizontal | vertical) />

Umsetzen von AppWidgets 1/2 Vererben von BroadcastReceiver Überschreiben von onUpdate(), onDeleted(), onDisabled() und onEnabled() Registrieren von Intent-Filtern für Broadcasts Es gibt eine gekapselte Klasse für 1) und 2) => AppWidgetProvider public class MeineAppWidget extends AppWidgetProvider { @Override public void onUpdate (Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { //Was passiert im update? }

Umsetzen von AppWidgets 2/2 Im Manifest als Receiver registrieren und Verweis auf Meta-Daten-Datei <receiver android:name=".MeineAppWidget" android:label="Meines!" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_provider_info" /> </receiver>

RemoteViews für AppWidgets 1/2 RemoteViews werden eingesetzt um Views in anderen Applikationen zu ändern Da AppWidget im HomeScreen laufen und geändert werden sollen, kommen RemoteViews zum Einsatz Tatsächlich durchgeführt werden die Änderungen durch den Einsatz eines AppWidgetManager. Dieser wird im onUpdate() des AppWidgetProviders übergeben oder mittels AppWidgetManager appWidMan = AppWidgetManager.getInstance(context); ComponentName thisWidget = new ComponentName(context, MeiWidget.class); int[] appWidgetIds = appWidgetManager.getAppWidgetIds(thisWidget); geholt

RemoteViews für AppWidgets 2/2 In beiden Fällen werden so for (int i = 0; i < anzahl; i++) { int appWidgetId = appWidgetIds[i]; RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout); views.setTextViewText(R.id.widget_text1, "erste Zeile"); appWidgetManager.updateAppWidget(appWidgetId, views) } die Views aktualisiert. Zu beachten ist, dass ein AppWidget mehrfach zum Einsatz kommen kann, daher ist es notwendig, diese Schleife einzusetzen.

Interaktion mit AppWidget Klick auf AppWidget soll etwas bewirken, einrichten eines ClickListener Intent intent = new Intent(context, MeineAktivität.class); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); views.setOnClickPendingIntent(R.id.widget_text1, pendingIntent); Intent kann Aktivität, Dienst oder implizieter Intent (z.B. „öffne WebSite http://wifiwien.at“) sein Mehrere Buttons oder andere View-Elemente können mit unterschiedlichen Intents verbunden sein

Aktualisierung von AppWidgets Verwendung von AppWidget-updatePeriodMillis In Millisekunden angegebene Zeit, bis wieder onUpdate() aufgerufen wird Ressourcen-intensiv, da das Gerät „aufgeweckt“ wird um dieses Update durchzuführen => zurückhaltend einsetzen Alternativen: Intentfilter und onReceive() im Widget überschreiben Alarm

Konfiguration von AppWidgets 1/2 Wird aufgerufen, nach dem Benutzer AppWidget ausgewählt hat, bevor AppWidget am HomeScreen erscheint Zwei Möglichkeiten Konfiguration einzusetzen nur beim ersten Mal, dann löschen und neu um Konfiguration erneut durchzuführen Intent auf Konfigurations-Aktivität setzen Konfigurationsaktivität braucht Intent-Filter für <activity android:name=".WidgetConfigAct"> <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/> </intent-filter></activity> In Meta-Daten des appwidget-provider android:configure = “com.example.WidgetConfigAct"

Konfiguration von AppWidgets 2/2 In der Konfigurations-Aktivität einlesen von AppWidgetId appWidgetId=extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); Vorbereiten von Abbruch setResult(RESULT_CANCELED, null); Einrichten einer GUI zur Konfiguration von AppWidget

Wichtige Befehle XML-Layout wie Aktivität allerdings eingeschränkt XML-Meta-Daten in res/xml <appwidget-provider […] AppWidgetProvider onUpdate() Intent-Filter setzen RemoteViews views = new RemoteViews( context.getPackageName(), layout); appWidgetManager.updateAppWidget(appWidgetId, views) views.setOnClickPendingIntent()

Demonstration AppWidget das Zahl am Desktop anzeigt AppWidget das bei Klick impliziten Intent auslöst um WebSite von WIFI-Wien aufzurufen AppWidget mit Verbindung zu Applikation AppWidget mit Konfiguration nach Auswahl

Üben Erstellen Sie ein Widget mit einem TextView. Klick auf den TextView führt zu einer Applikation in der aus einer Liste mit den Zahlen von 1-100 eine ausgewählt werden kann. Auswahl einer Zahl aus der Liste führt zur Anzeige dieser Zahl im Widget. Erstellen Sie ein Widget, dessen Konfiguration die Möglichkeit bietet die Farbe des Textes der verwendeten TextView zu steuern. In diesem TextView steht die Bezeichnung der gewählten Farbe Erstellen Sie ein 3x1 Widget, das die Überschrift der letzten Nachricht auf orf.at (RSS verwenden) anzeigt

Zusammenfassung