Ermitteln Sie, in welcher Ansicht Ihr Finger über Android gleitet

8

Während questions wurden in der Vergangenheit gefragt, sie scheinen nicht wirklich beantwortet worden zu sein, was auf Verwirrung bezüglich der Frage zurückzuführen sein könnte.

Einfach gesagt, würde ich gerne feststellen, welche Ansicht eingegeben wird, während Ihr Finger über den Bildschirm gleitet. Das beste Beispiel in Aktion ist die Soft-Tastatur auf jedem Android-Handy. Wenn Sie eine beliebige Taste drücken, wird es als Popup angezeigt, um Ihnen zu sagen, welcher Buchstabe sich unter Ihrem Finger befindet. Wenn Sie nun mit einer einzigen Geste Ihren Finger über die Tastatur bewegen, erscheinen die verschiedenen Buchstaben, wenn Sie sich über die verschiedenen Buchstaben des Alphabets bewegen.

Welche Listener werden für diese Art von Verhalten verwendet? Ich habe OnTouchListeners ausprobiert, aber sie scheinen nur dann zu sein, wenn Sie den Knopf "berühren", anstatt ihn "zu berühren"

%Vor%

OnFocusChangeListener hilft auch nicht.

    
Tim 29.01.2011, 18:23
quelle

6 Antworten

0

Die einfache Antwort ist, dass Sie das iPhone im Accessibility-Modus nicht mögen können.

Bis Ice Cream Sandwich das ist. Es hat jetzt die iPhone-ähnliche Fähigkeit, Elemente unter Ihrem Finger zu erkennen, ohne es anzuheben.

    
Tim 12.02.2012, 23:45
quelle
5
  • Erstellen Sie ein Layout
  • fügen Sie Ansichten zu Ihrem Layout hinzu
  • Setzen Sie den setOnTouchListener auf Ihr Layout
  • überschreiben Sie die onTouch-Methode mit den folgenden:

    %Vor%
Garry 20.06.2011 19:58
quelle
3

BEARBEITEN:

Ich sah Tastatur. Ich denke, es ist nur eine Ansicht und Koordinaten von jedem Buchstaben bekannt. So können Sie leicht berechnen, welchen Buchstaben der Benutzer durchläuft

UND JETZT DIE ANTWORT:

Ich bin mir nicht sicher, aber wahrscheinlich hilft dieser Code Ihrem.

Es ist so weit weg, ich habe es für mich geschrieben. Aber die Idee folgt.

Wenn ich mich recht erinnere, gibt es keinen Gestendetektor für Ansichten, aber Sie können den Touchlistener der Ansicht mit geturelistener Ihrer Aktivität kombinieren.

Sobald Sie Ihre Ansicht berührt haben, haben Sie

%Vor%     
Tima 30.01.2011 10:22
quelle
0

Vielleicht möchten Sie GestureDetector ausprobieren.

    
Will Tate 29.01.2011 18:29
quelle
0

Ссылка es ist auf Multitouch ausgerichtet, aber das ist ein guter Anfang, um android touch / Gesten, nächsten Halt, api docs / samples

zu verstehen     
Dan 29.01.2011 18:59
quelle
0

Es ist ziemlich einfach, das manuell zu handhaben.

Wenn Sie Ihr übergeordnetes Layout als onTouchListener verwenden (im folgenden Beispiel I extend a RelativeLayout ), können Sie mithilfe einer einfachen Koordinate nach Kollisionen zwischen einem MotionEvent und dem untergeordneten View s suchen Vergleichslogik:

%Vor%

Aufrufe an getCollisionWith geben View Referenzen zurück, die beliebig manipuliert werden können.

    
Alex T. 09.09.2017 02:34
quelle

Tags und Links