Benutzertools

Site-Tools


Handbuch:Erweitert:Anpassung:Bildschirme

Differenzen

Dies zeigt Ihnen die Unterschiede zwischen zwei Versionen der Seite.

Link zu dieser Vergleichsansicht

Beide Seiten vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
manual:advanced:customization:screens [2023/05/04 16:06] – [Benutzerdefinierte Bildschirme und Dashboards] mstupkamanual:advanced:customization:screens [2023/07/14 13:46] (Strom) - mstupka
Linie 1: Linie 1:
-====== Benutzerdefiniert Screens and Dashboards ======+====== Benutzerdefiniert Bildschirm ======
  
 ---- ----
-Versandart of creating custom screens requires at least essential knowledge of developing Android and XML files system. Otherwise we recommend benutzen already created skins. To edit them, use just simple NotePad or any text editing software with XML syntax highlight (for example [[http://notepad-plus-plus.org/|Notepad++]])+Das Verfahren of creating custom screens requires at least essential knowledge of developing Android and XML files system. Otherwisewir empfehlen Verwendung von bereits-created skins. To edit them, use just simple NotePad or any text editing software with XML syntax highlight (for example [[http://notepad-plus-plus.org/|Notepad++]])
  
-For most people who want to create their own screens should be enough Verwendung von much simpler **[[manual:Benutzerhandbuch:Werkzeuge:Dashboards|Dashboard]]**-System, das ähnliche Funktionen auf viel weniger schmerzhafte Weise bietet.+For most people who want to create their own screens should be enough eine Verwendung much simpler **[[manual:Benutzerhandbuch:Werkzeuge:dashboards|dashboard]]** system that offers similar functionality in much less painful way.
  
 **Dashboard** ist jedoch nur mit Premium verfügbar und vermisst einige erweiterte Möglichkeiten wie das Drehen von Bildern, ein völlig freies Layout usw. **Dashboard** ist jedoch nur mit Premium verfügbar und vermisst einige erweiterte Möglichkeiten wie das Drehen von Bildern, ein völlig freies Layout usw.
Linie 11: Linie 11:
  
   - Download and install Eclipse and Android SDK tools from [[http://Developer.android.com/sdk /index.html|here >>]].   - Download and install Eclipse and Android SDK tools from [[http://Developer.android.com/sdk /index.html|here >>]].
-  - When all works, create a new androide project. This will create basic data structure. You'll not need to program anything.+  - When all works, create a new Android Projekt. Das wird entstehen basic data structure. You'll not need to program anything.
   - The project contains //res /Layout/main.xml// file - that's our target. Learn to work with Eclipse GUI builder and edit this file.   - The project contains //res /Layout/main.xml// file - that's our target. Learn to work with Eclipse GUI builder and edit this file.
   - Platzieren Sie Ressourcen (am besten verwenden Sie 9-Patch-Bilder) in //res/-Ordnern (unterstützt – //drawable, drawable-hdpi, drawable-mdpi, drawable-ldpi//)   - Platzieren Sie Ressourcen (am besten verwenden Sie 9-Patch-Bilder) in //res/-Ordnern (unterstützt – //drawable, drawable-hdpi, drawable-mdpi, drawable-ldpi//)
-  - Nach der Zusammenstellung, nehmen //mail.xml// Datei- und Bildressourcen aus kompilierter Quelle (das liegt an 9-Patch-Bildern. Wenn Sie einfache .png-Dateien verwenden möchten, können Sie sie direkt in das Ergebnis einfügen. 9-Patch müssen vorkompiliert werden!).+  - Nach der Zusammenstellung, nehmen //mail.xml// file and image resources from compiled source (this is because of 9-patch images. If you want to use basic .png files, you can add them directly into   Ergebnis. 9-Patch muss vorkompiliert werden!).
  
 ==== Verwendung eines einfachen Texteditors ==== ==== Verwendung eines einfachen Texteditors ====
  
-Sie müssen die vorherigen Schritte nicht ausführen. Sie können bearbeiten XML-Datei direkt in einem beliebigen Editor. Vorherige Schritte werden nur empfohlen Weg,  für einfaches „Drag and Drop“-Erstellen und auch die einzige Möglichkeit, 9-Patch-Bilder zu unterstützen!+Sie müssen nicht tun   vorherigen Schritte. Sie können bearbeiten XML-Dateien direkt in einem beliebigen Editor. Der bisherige Schritte werden nur empfohlen Wege zum einfachen Erstellen per „Drag and Drop“ und auch   Einzige Möglichkeit, 9-Patch-Bilder zu unterstützen!
  
 ===== How to make it work ===== ===== How to make it work =====
Linie 38: Linie 38:
 </Code> </Code>
  
-Platzieren Sie Ihre Hauptlayoutdatei im Layoutverzeichnis (oder zwei Dateien, eine in „layout-land“, zweitens nach layout-port) und benennen Sie es in // ummain.xml//. Das ist wichtig, weil //main.xml// Datei ist Tor zum gesamten Layout, sie muss eingebunden werden!+Platzieren Sie Ihre Hauptlayoutdatei in   Layout-Verzeichnis (oder zwei Dateien, eine für Layout-Land, zweitens nach layout-port) und benennen Sie es in // ummain.xml//. Das ist wichtig, weil //main.xml// Datei ist   Tor zu   whole layout, it has to be included!
  
-You can place these files also in root of .ZIP file (optional)+You can place these files also in   Wurzel von Ihre .ZIP file (optional)
   * **icon.png** – kleines (48x48px) Logo Ihres Skins   * **icon.png** – kleines (48x48px) Logo Ihres Skins
-  * **info.html** - HTML page that will contain description of your skin (some links, donate button or similar is possible)+  * **info.html** – HTML-Seite, die enthalten wird description of your skin (some links, donate button or similar is possible)
  
 Abschließend legen Sie diese .zip-Datei in das oben beschriebene Root-Verzeichnis! Abschließend legen Sie diese .zip-Datei in das oben beschriebene Root-Verzeichnis!
Linie 61: Linie 61:
  
   * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html|TextView]] erweitert View   * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html|TextView]] erweitert View
-    * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:text|android:Text]] - dies enthalten AKTIONEN unten+    * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:text|android:Text]] - dies enthält AKTIONEN unten
     * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:textColor|android:Textgröße]]     * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:textColor|android:Textgröße]]
     * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:textColor|android:Textfarbe]]     * [[http://Developer.android.com/Referenz/Android/Widget/TextView.html#attr_android:textColor|android:Textfarbe]]
Linie 83: Linie 83:
  
   * MapScreenView (benutzerdefinierte Ortsansicht) erweitert die Ansicht   * MapScreenView (benutzerdefinierte Ortsansicht) erweitert die Ansicht
-    * kein Brauch die Einstellungen+    * kein Brauch Parameter
  
   * RotateView (benutzerdefinierte Ortsansicht) erweitert die Ansicht   * RotateView (benutzerdefinierte Ortsansicht) erweitert die Ansicht
     * Ort:Aktion – an welche Rotationsaktion anhängen ... zum Beispiel Ort:Aktion="{orient_course}“     * Ort:Aktion – an welche Rotationsaktion anhängen ... zum Beispiel Ort:Aktion="{orient_course}“
-    * Ort:rotateImage – Referenz zum Zeichenobjekt, tatsächlich zentriert und um den durch die Aktion definierten Winkel um die Mitte gedreht+    * Ort:rotateImage - Verweis auf zeichnbar, tatsächlich zentriert und gedreht   zentrieren an Winkel definiert durch Aktion
     * Ort:rotierenPivotX – Drehpunkt um den X-Wert verschieben (+X nach unten)     * Ort:rotierenPivotX – Drehpunkt um den X-Wert verschieben (+X nach unten)
     * Ort:rotatePivotY – Drehpunkt um den Y-Wert verschieben (+Y nach unten)     * Ort:rotatePivotY – Drehpunkt um den Y-Wert verschieben (+Y nach unten)
-    * Ort:rotateStartAngle - angle at which rotation starts with rotateStartValue value (- value for counter-clockwise orientation) +    * Ort:rotierenStartAngle -   angle at which rotation starts with rotateStartValue value (- value for counter-clockwise orientation) 
-    * Ort:rotierenStartWert – Wert für die Variable, die bei rotierenStartAngle beginnt (in Basiseinheiten, also Meter, zweite, ..) +    * Ort:rotateStartValue – Wert für   Variable, die bei „rotateStartAngle“ beginnt (in Basiseinheiten, also Meter, zweite, ..) 
-    * Ort:rotateEndAngle - angle at which rotation ends with rotateEndValue value+    * Ort:rotateEndAngle -   angle at which rotation ends with rotateEndValue value
     * Ort:rotateEndValue – Wert für Variable, der bei rotateEndValue endet     * Ort:rotateEndValue – Wert für Variable, der bei rotateEndValue endet
  
Linie 98: Linie 98:
   * **SlideView** (custom Locus view) extends View   * **SlideView** (custom Locus view) extends View
     * Ort:action - attaches to which slide action ... for example locus:Aktion="{orient_course}“     * Ort:action - attaches to which slide action ... for example locus:Aktion="{orient_course}“
-    * Ort:slideImage - reference to a drawable item used for slide+    * Ort:slideImage - reference to a drawable item used for slide
     * Ort:slideStartPosition - position of image pixel that matches //slideStartValue// Wert.     * Ort:slideStartPosition - position of image pixel that matches //slideStartValue// Wert.
     * Ort:slideStartValue – Aktionswert für //slideStartPosition// (in Basiseinheiten - Meter, Sekunden, ..)     * Ort:slideStartValue – Aktionswert für //slideStartPosition// (in Basiseinheiten - Meter, Sekunden, ..)
Linie 106: Linie 106:
  
  
-**Sample** - let's imagine this image of compass: +**Beispiel** – stellen wir uns dieses Bild vor   Kompass: 
  
 {{ :Handbuch:fortschrittlich:Anpassung:img_compass_slide.png?nolink |}} {{ :Handbuch:fortschrittlich:Anpassung:img_compass_slide.png?nolink |}}
Linie 123: Linie 123:
 </Code> </Code>
  
-Mit dieser Definition sagt man:+By this definitionyou say that:
  
-  * 1. if orientation angle is 180°, the first pixel (slideStartPosition) will be drawn really as the first pixel. Because the defined whole range is from 0° - 360° and end value has position on the end (//Ort:slideEndPosition="match_parent"//), Das Bild wird über den gesamten Bildschirm gestreckt. Mitte des Bildes (**S**) wird in der Mitte sein, wie wir wollen! +  * 1. wenn   orientation angle is 180°, the first pixel (slideStartPosition) will be drawn really as the first pixel. Because the defined whole range is from 0° - 360° and   end value has Position am Ende (//Ort:slideEndPosition="match_parent"//),   Das Bild wird gestreckt   ganzer Bildschirm. Die Mitte of   Bild (**S**) wird in der Mitte sein, wie wir wollen! 
-  * 2. if orientation is for example 90°, Locus Map erstens computes percent part of image that should be moved. It's computed by **(current value - slideStartValue) / (slideEndValue - slideStartValue)**, In diesem Fall ist es also (90 - 180) / (-180 - 180) = **25 %**!. Das bedeutet, dass das Bild um 25 % verschoben wird.+  * 2. if orientation is for example 90°, Locus Map zuerst berechnet   Prozentanteil von   Bild, das verschoben werden soll. Es wird berechnet durch **(aktueller Wert – slideStartValue) / (slideEndValue – slideStartValue)**, In diesem Fall ist es also (90 - 180) / (-180 - 180) = **25 %**!. Das bedeutet, dass das Bild um 25 % verschoben wird.
 </WICKELN> </WICKELN>
  
 ==== Globale Attribute ==== ==== Globale Attribute ====
  
-Auf alle Views can be applied these attributes:+Alle Views can be applied mit these attributes:
  
   * [[http://Developer.android.com/Referenz/Android/Aussicht/Ansicht.html#attr_android:id|android:Ausweis]]   * [[http://Developer.android.com/Referenz/Android/Aussicht/Ansicht.html#attr_android:id|android:Ausweis]]
   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.LayoutParams.html#attr_android:layout_width|android:layout_width]]   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.LayoutParams.html#attr_android:layout_width|android:layout_width]]
   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.LayoutParams.html#attr_android:layout_height|android:layout_height]]   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.LayoutParams.html#attr_android:layout_height|android:layout_height]]
-  * [[http://Developer.android.com/Referenz/Android/Widget/LinearLayout.LayoutParams.html#attr_android:layout_weight|android:layout_weight]] – wenn die übergeordnete Ansicht LinearLayout ist +  * [[http://Developer.android.com/Referenz/Android/Widget/LinearLayout.LayoutParams.html#attr_android:layout_weight|android:layout_weight]] – if   Die übergeordnete Ansicht ist LinearLayout 
-  * [[http://Developer.android.com/Referenz/Android/Widget/RelativeLayout.LayoutParams.html|RelativeLayout.LayoutParams]] – wenn die übergeordnete Ansicht RelativeLayout ist+  * [[http://Developer.android.com/Referenz/Android/Widget/RelativeLayout.LayoutParams.html|RelativeLayout.LayoutParams]] – wenn   Die übergeordnete Ansicht ist RelativeLayout
   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.MarginLayoutParams.html|android:layout_margin]]   * [[http://Developer.android.com/Referenz/Android/Aussicht/ViewGroup.MarginLayoutParams.html|android:layout_margin]]
   * Android:layout_marginLeft   * Android:layout_marginLeft
Linie 218: Linie 218:
  
   * Parameter sollten {i}, {d}, {id}, {u} sein.ganzzahliger Teil, doppelter Teil, beides, nur Einheiten“   * Parameter sollten {i}, {d}, {id}, {u} sein.ganzzahliger Teil, doppelter Teil, beides, nur Einheiten“
-  * Zum Beispiel - //"Ort:textFormat="{id} - {u}"//. Kann angewendet werden aufGeschwindigkeit, Distanz, Höhe und Genauigkeit jetzt+  * Zum Beispiel - //"Ort:textFormat="{id} - {u}"//. Kann auf Geschwindigkeit, Distanz, Höhe angewendet werdenund Genauigkeit jetzt
manual/advanced/customization/screens.1683209207.txt.gz · Zuletzt geändert: 2023 05:04 von mstupka