Touch Events iPad

Startseite Foren Deutsches LiveCode-Forum Touch Events iPad

Ansicht von 11 Antwort-Themen
  • Autor
    Beiträge
    • #47864
      sardus
      Teilnehmer

        Hallo zusammen

        Ich habe in einer App Punkte, welche ich mit einer Touch-Bewegung (Finger fährt über die Objekte ohne „Click“) markieren (Farbe ändern) möchte. Irgendwie kriege ich das mit mouse- oder touch-Events nicht hin. Hätte jemand einen Tipp?

        Herzlichen Dank!

      • #47865
        Klaus Major
        Administrator

          Moin sardus,

          erklär doch bitte mal näher, was genau machen möchtest und wie es passieren soll.

          Gruß

          Klaus

        • #47866
          sardus
          Teilnehmer

            Hallo Klaus

            Entschuldige bitte meine unklare Formulierung. Ich versuche es nochmals.

            Ich habe eine App auf dessen Card verschiedene Punkte (graphics) zu sehen sind. Nun möchte ich registrieren, welche Punkte der User berührt, wenn er mit dem Finger über das Tablet fährt. Dabei ist wichtig, dass die Punkte nur registriert werden, wenn der User mit dem Finger darüberfahrt ohne diese explizit zu drücken. Ich bräuchte also eine Art „mouse over“ im touch-Modus.

          • #47867
            Klaus Major
            Administrator

              Aha, danke!
              Das könnte so klappen (Kartenskript):

              ## Bin nicht sicher, ob wir diese ID benötigen, aber frisst ja kein Brot :-)
              local tTouchID
              
              ## Finger wird gedrückt:
              on touchstart tID
                 put tID into tTouchID   
              end touchstart
              
              ## Finger wird wieder los gelassen:
              on touchend tID
                 put empty into tTouchID
              end touchend
              
              ## Das wird gesendet, wenn der User den Finger gedrückt hält und dann bewegt:
              on touchmove tID,x,y
                 put controlatloc((x,y)) into tObjektUnterDemFinger
                 
                 ## controlatloc() liefert nur 
                 ## -> control X
                 ## zurück, falls Du den Namen oder so benötigst:
                 put the name of tObjektUnterDemFinger into DasObjekt
                 ## -> graphic "name der grafik"
                 ## Dann kannst Du entscheiden, ob Du die Farbe ändern willst oder was auch immer...
              end touchmove

              Aus dem Kopf, also bitte probier das mal aus und berichte. 🙂

            • #47868
              sardus
              Teilnehmer

                Hallo Klaus

                Vielen herzlichen Dank für die rasche Rückmeldung! Das ist wie immer ein top Service 🙂

                Ich werde das ausprobieren und mich wieder melden. In der Endanwendung geht es darum, dass Benutzer der App in einem Raster aus Punkten Symmetrieachsen in Figuren einzeichnen müssen. Diese Symmetrieachsen möchte ich vorgeben und  unsichtbar stellen. Nur wenn ein User mit dem Finger die korrekten Punkte (Lage der Achsen) überfährt, soll(en) die Symmetrieachse(n) erscheinen.

              • #47869
                Klaus Major
                Administrator

                  Kleiner Fehler in meinem Skript, es muss so heissen:

                  ...
                  put controlatloc((x,y)) into tObjektUnterDemFinger
                  ## Doppelte Klammern!
                  ...

                  Habe das Skript oben schon korrigiert.

                • #47870
                  sardus
                  Teilnehmer

                    Hallo Klaus

                    Ich habe deinen Code ausprobiert. Dieser funktioniert gut. Ich kann die Label der markierten Punkte auslesen und mit einer Liste vergleichen. Leider funktioniert aber der „Touch“ auf dem iPad nicht wirklich zufriedenstellend. Man muss teilweise mehrmals über die Punkte fahren, um sie zu markieren.

                    Ich werde deshalb die Symmetrieachsen vordefinieren und „invisible“ setzen. Sobald ein Benutzer darauf tippt, erscheinen diese dann.

                    Trotzdem vielen Dank für deine Hilfe!

                  • #47871
                    Klaus Major
                    Administrator

                      Meinst Du, daß „touchstart“ nicht immer ausgeführt wird?

                    • #47872
                      sardus
                      Teilnehmer

                        Nein, ich glaube es liegt eher an der „Hardware“. Meiner Meinung nach wird „touchstart“ korrekt ausgeführt. Vielleicht muss ich auch mal das Glas des iPads putzen …

                      • #47873
                        Klaus Major
                        Administrator

                          Genau, wisch mal die ganzen Koksreste weg! 😀

                        • #47874
                          Klaus Major
                          Administrator

                            Das war ein Witz! 😎

                          • #47875
                            sardus
                            Teilnehmer

                              Hallo Klaus

                              Alles gut – kein Problem 😉

                          Ansicht von 11 Antwort-Themen
                          • Du musst angemeldet sein, um auf dieses Thema antworten zu können.