1. Möchtest Du unser Team im Android OS-Bereich unterstützen? Details dazu findest du hier!
  2. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

[]NOOB] Scenes how to?

Dieses Thema im Forum "Tasker" wurde erstellt von maatik, 26.05.2012.

  1. maatik, 26.05.2012 #1
    maatik

    maatik Threadstarter Android-Experte

    Beiträge:
    610
    Erhaltene Danke:
    73
    Registriert seit:
    18.09.2011
    Hallo,

    Habe jetzt endlich mal auf die aktuelle Version updated. Läuft soweit alles sehr stabil, Backup der alten Profile lies sich problemlos einspielen.

    Es gibt ja jetzt als Neuerung die scenes. Soweit ich das verstanden hab kann ich mir damit Oberflächen basteln die mit Tasker interagieren.

    Mein Versuch mir einen slider zu konfigurieren der mir lediglich klingeltonlautstärke regelt schlug kläglich fehl.

    Kann mir jemand an einer anderen scene die vielleicht schon im Einsatz ist erklären wie scenes aufgebaut sind und welche Tücken zu umgehen sind?
    Eine scene hat mir mal das Display blockiert, bis zum Neustart ging nichts mehr.

    Danke schon mal
    Gruss maat
     
  2. Indurus, 30.05.2012 #2
    Indurus

    Indurus Android-Experte

    Beiträge:
    661
    Erhaltene Danke:
    173
    Registriert seit:
    26.10.2010
    Würde mich auch brennend interessieren. Gibts generell sowas wie ein Tutorial dazu? Mit den Scenes komme ich überhaupt nicht klar...
     
  3. maatik, 02.06.2012 #3
    maatik

    maatik Threadstarter Android-Experte

    Beiträge:
    610
    Erhaltene Danke:
    73
    Registriert seit:
    18.09.2011
    Push :)

    Gruss maat
     
  4. CaveCanem, 10.06.2012 #4
    CaveCanem

    CaveCanem Fortgeschrittenes Mitglied

    Beiträge:
    413
    Erhaltene Danke:
    65
    Registriert seit:
    26.01.2011
    Phone:
    Nexus 5
    germanos, jna und Indurus haben sich bedankt.
  5. CaveCanem, 11.06.2012 #5
    CaveCanem

    CaveCanem Fortgeschrittenes Mitglied

    Beiträge:
    413
    Erhaltene Danke:
    65
    Registriert seit:
    26.01.2011
    Phone:
    Nexus 5
    Indurus bedankt sich.
  6. germanos, 14.11.2012 #6
    germanos

    germanos Erfahrener Benutzer

    Beiträge:
    215
    Erhaltene Danke:
    48
    Registriert seit:
    18.09.2012
    Phone:
    Sony Xperia P
    [FONT=Arial, sans-serif]Die vorgenannten Anleitungen waren ein guter Einstieg in die Erstellung von Szenen. Allerdings war bei Umsetzung der eigenen Wünsche und Ideen dann doch viel Versuch&Fehler als es um die Verbindung mit eigenen Variablen ging, das Erstellen eines Menüs aus einem Array und das Vorbelegen von Button-Beschriftungen im Zusammenhang mit zusätzlichen Tasks u.a.m. ...
    Daher die Motivation:


    Szenen erstellen und verwenden
    [/FONT]
    1.Einleitung

    Szenen sind grafische Benutzeroberflächen (neudeutsche Abkürzung: GUI) um z.B. Variablenwerte wie die SMS-Vorlesegeschwindigkeit anzuzeigen oder zu ändern, per Button eine Aktion zu starten, mit einem Schieberegler (Slider) die Lautstärke einzustellen etc.pp.

    Um solche Funktionen interaktiv nutzbar zu machen, muss man eine Szene erstellen. Also die grafischen Elemente definieren und konfigurieren, die man benötigt um z.B. ein Profil zu (de)aktivieren oder einen Variablenwert eingeben zu können.
    Dabei beschreibt die Szene u.a. Größe und Farbe der Benutzeroberfläche und z.B. Position, Größe und Beschriftung eines Buttons oder den auswählbaren Wertebereich eines Schiebereglers.

    Wenn man eine Szene erstellt hat, muss man sie zur Ausführung bringen. Diese Aufgabe übernimmt ein Task, den man dazu erstellt. Simples Grundgerüst:

    Variante A:
    [FONT=Courier New, monospace]Create Scene X[/FONT]
    [FONT=Courier New, monospace]Show Scene X[/FONT] (Option ~continue task: no~ Option ~Show exit button: yes~)
    [FONT=Courier New, monospace]Destroy Scene X[/FONT]
    Variante B:
    [FONT=Courier New, monospace]Create Scene X[/FONT]
    [FONT=Courier New, monospace]Show Scene X[/FONT] (Option ~continue task: yes~ Option ~Show exit button: yes~)
    [FONT=Courier New, monospace]# [/FONT][FONT=Courier New, monospace]Destroy Scene X[/FONT] muss über einen Ende-Button der Szene ausgelöst werden
    Der Task kann über ein Profil, ein Widget oder eine Verknüpfung zur Ausführung kommen – der übliche Weg dürfte Verknüpfung oder Widget sein.

    [​IMG]

    Was man aber auch wissen muss, ist die Tatsache, dass die Elemente einer Szene sozusagen nix von der Realität wissen!? Z.B. kann ein Schieberegler zwar Werte von 0 bis 10 darstellen und vom Benutzer ändern lassen. Aber es gibt (zunächst) keine Verbindung von diesem Zahlenwert zu unseren Variablen oder Systemvariablen. Diese Verbindung müssen wir über benannte und/oder unbenannte Tasks herstellen.

    Der ursprüngliche Beitrag von 23:17 Uhr wurde um 23:25 Uhr ergänzt:

    2.Elemente einer Szene mit einer Benutzervariablen verbinden

    Nehmen wir an, dass wir die Vorlesegeschwindigkeit von 4 bis 6 einstellen können wollen. Der aktuelle Wert unserer Vorlese-Task ist über die Variable %Speed=4 festgelegt.
    Also teilen wir das dem Schieberegler vor dessen Anzeige mit:
    [FONT=Courier New, monospace]Create Scene X[/FONT]
    [FONT=Courier New, monospace]Scene X – Element Value - SpeedSlider1 = %Speed[/FONT]
    [FONT=Courier New, monospace]Show Scene....[/FONT]
    Dadurch zeigt die Szene gleich beim Start unseren aktuellen Wert an. Wenn wir nun den Regler auf z.B. 5 schieben, wird %Speed jedoch nicht verändert. Wie auch? Wir haben es Tasker und der Szene ja noch nicht gesagt...

    Im Szenen-Editor gibt es für jedes Element verschiedene Registerkarten, so auch „Value Selected“ für ein Schieberegler-Element. Dort wird als unbenannte Task definiert, was passieren soll, wenn der Schieberegler bewegt wurde. Der neue Wert ist in der Task als %new_val nutzbar, der vorherige Wert über %old_val.
    Verbinden wir also den Regler an dieser Stelle mit unserer Variablen und unserer Vorlese-Task:
    [FONT=Courier New, monospace]%Speed = %new_val[/FONT]
    Und schon haben wir eine Szene, die sich wie ein Optionen-Dialog verhält.

    (Im vorherigen Screenshot und der Beispiel-Szene regelt der Schieberegler die Klingeltonlautstärke - ähnliches Vorgehen)

    Was passieren soll, wenn z.B. ein Button gedrückt wird, legt man in der Registerkarte „Tap“ fest. Etwas komplizierter sind die Menü-Elemente, bei denen Tasker andere Variablen als %new_val zur Verfügung stellt. Aber dazu vielleicht später mehr und in den Beispielen.

    3.Eine Szene mit ENDE-Button – eine gute Idee

    Ich persönlich bevorzuge o.g. Variante B: eine Szene, die einen ENDE-/Zurück-Button hat und sich damit selbstständig beendet während die die Szene aufrufende Task unabhängig davon weiterläuft oder sich beendet.

    Wie geht das?

    In der Szene wird ein Button mit z.B. dem Text ENDE oder Zurück definiert, der in der Registerkarte „Tap“ die Anweisung [FONT=Courier New, monospace]Destroy Scene X[/FONT] enthält – die Szene begeht sozusagen Suizid.

    Der ursprüngliche Beitrag von 23:25 Uhr wurde um 23:28 Uhr ergänzt:

    4.Optionen von Show Scene – Display as...

    Eine Szene kann u.a. als Applikation (~Activity~), Popup oder Überlagerung (Overlay) angezeigt werden und in manchen Modi einen von Tasker generierten Exit-Button als „Not-Aus“ haben. Für den Anfang arbeitet man am Besten mit den Optionen
    Show Scene
    Option: [FONT=Courier New, monospace]Display as[/FONT]: Activity, Full Window
    Option: [FONT=Courier New, monospace]Show Exit Button[/FONT]: yes
    Option: [FONT=Courier New, monospace]Continue Task Immediately[/FONT]: yes
    # sofern man einen eigenen ENDE-Button hat
    und kann sich damit nicht aussperren oder das Display blockieren.

    Hier lohnt es sich, in der Tasker-Hilfe und -Dokumentation zu lesen. In Kürze: Activity skaliert die Szene auf Display-Größe und verdeckt damit alles bis auf die Statusleiste oben. Andere Modi (nicht: Full Window) zeigen die Szenen in der im Szenen-Editor definierten Größe an so dass ggf. noch Elemente auf dem Home-Screen erreichbar sind.

    Der von Tasker generierte Exit-Button ist ein kleines rotes Kreuz in der rechten unteren Ecke zum schließen der Szene – m.E. eine Vorsorge, falls man etwas falsch programmiert hat.

    5.Szenen und (Probleme mit) Task-Prioritäten

    Wenn eine Szene über ein Widget (oder eine Verknüpfung aufgerufen wird) hat sie sozusagen die Priorität 7. Nämlich die Priorität, die Tasker den über Widgets aufgerufen Tasks zuweist. Das ist solange uninteressant wie man weder benannte Tasks aus der Registerkarte „Tap“ eines Elements aufruft oder solange man auf das Ändern von Szenen-Elementen durch eine parallel laufende Task verzichtet während die Szene bereits angezeigt wird.

    Ein von einer Szene ausgelöste Task, die auch Szenen-Elemente ändern soll (Slider-Wert, Button-Text/-Farbe für On/Off-Zustand, …) muss mindestens die Priorität 6, besser 7, erhalten, damit die Änderung zeitnah in der angezeigten Szene sichtbar wird!
     
    Zuletzt bearbeitet: 15.11.2012
    vepman und gerry27 haben sich bedankt.
  7. germanos, 14.11.2012 #7
    germanos

    germanos Erfahrener Benutzer

    Beiträge:
    215
    Erhaltene Danke:
    48
    Registriert seit:
    18.09.2012
    Phone:
    Sony Xperia P
    6.Szenen sind durchsichtig – in der Standard-Einstellung

    In der Standard-Einstellung schimmert bei der Anzeige von Szenen recht viel vom Hintergrund durch. Wenn und wen das stört, der kann ein Hintergrundelement für eine Szene definieren und dessen Durchsichtigkeit reduzieren. Im Ergebnis erhält man so eine den Hintergrund überdeckende Szene.

    Kurzes Kochrezept:

    In der Szene ein Rechteck anlegen und dessen Farbe (Option: Colour) nach Belieben wählen. Dabei wird die Farbe in 4 Bytes angegeben: 1 Byte Durchsichtigkeit + 3 Byte RGB Wert. Die Angaben sind Hexadezimal (von 00 über 99, A0 bis FF) und jeweils 2 Buchstaben/Ziffern sind ein Byte, Beispiel:
    #FA334455
    FA (Hex) ist der Wert 250 für die Durchsichtigkeit: 0 = durchsichtig / 255 = deckend
    33(Hex) ist der Rot-Wert
    44(Hex) der Grün-Wert
    55(Hex) der Blau-Wert
    ein dunkles Blaugrau mit Deckkraft.
    Um dieses Rechteck als Szenen-Hintergrund zu verwenden, muss man es lange Drücken und in den Optionen dann „Set Background“ auswählen (lange Drücken auf Hintergrund-Element und „Set Foreground“ macht es wieder sichtbar und bearbeitbar).

    In der Tasker-Hilfe wird empfohlen, zusätzlich die Hintergrundfarbe einer Szene festzulegen. Wie sich das von dem vorgenannten Hintergrund-Element unterscheidet, macht man am Besten sichtbar, indem man es nutzt und z.B. bei blauem Hintergrund-Element eine rote Hintergrund-Farbe wählt. Sichtbar ist das insbesondere in der automatisch von Tasker generierten Szenen-Überschrift bei [FONT=Courier New, monospace]Display as: Activity[/FONT].

    7.Und was können Szenen noch?

    Damit ist lange nicht alles über Szenen und deren Möglichkeiten geschrieben. Aber vielleicht über ein paar Stolpersteine und über Eigenheiten, die in anderen Anleitungen so nicht aufgegriffen wurden. Auf Anfrage kann dieser Text ergänzt werden.


    Die Screenshots motivieren hoffentlich zu eigener „Forschung“ - Viel Spaß!
    => zum Album
     

    Anhänge:

    Zuletzt bearbeitet: 14.11.2012
    vepman und gerry27 haben sich bedankt.
  8. Chillmann, 15.11.2012 #8
    Chillmann

    Chillmann Android-Experte

    Beiträge:
    575
    Erhaltene Danke:
    192
    Registriert seit:
    12.09.2012

    [Szenen können auch dynamisch, ähnlich wie Widgets, ihr Erscheinungsbild ändern. Sei es über Tasks wie "scene element visibility" oder "scene element position". Entsprechende Werte für element position z.B. können auch in Variablen stecken, welche ihrerseits Änderungen direkt an die Szene weitergeben.]

    :edit: wurde ja alles schon genannt :blushing:. Das Beispiel kann aber dennoch recht hilfreich sein.

    Ein hübsches Beispiel findet sich hier:
    http://www.android-hilfe.de/tasker/284580-zeigt-her-eure-tasker-profile-11.html#post4290687
     
    Zuletzt bearbeitet: 15.11.2012
    vepman, germanos und gerry27 haben sich bedankt.

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. tasker scene menu