Ich bin ziemlich neu in Android-Programmierung und Java (obwohl ich einige Erfahrung mit C # habe, so dass es hilft).
In diesem Moment gehe ich mit ein paar Dingen herum, um zu sehen, wie alles funktioniert. Ich habe eine Aktivität gemacht, die onTouchListener implementiert. Ich habe OnTouch außer Kraft gesetzt und habe event.getAction ():
eingeschaltet %Vor%Wo "Kreis" eine Klasse ist, die einen Kreis zeichnet.
Was ich erwartet hatte, war eine Spur von Kreisen, als ich mit dem Finger über den Bildschirm fuhr. Stattdessen wird der Kreis nur gezeichnet, wenn ich mich anfange zu berühren.
Ich habe meinen Code mit Beispielen verglichen (zum Beispiel: dieser Blogpost von Google: Ссылка ) und ich kann meinen Fehler nicht finden.
BEARBEITEN: Link zur vollständigen Klasse: Ссылка
BEARBEITEN: Fest. In der onTouch () -Funktion muss man true zurückgeben. oh!
Ich hatte das gleiche Problem bei der Verwendung von MotionEvent.ACTION_MOVE
.
Damit MotionEvent.ACTION_MOVE
funktioniert, gebe true statt false zurück.
Für mich war die Lösung
%Vor%in der onTouch-Funktion, wie Sie dies verwenden sollten
%Vor%}
Wenn Sie false von onTouch (View v, MotionEvent-Ereignis) zurückgeben, wird nur MotionEvent.ACTION_DOWN aufgerufen. Sie sollten also von dieser Funktion den Wert true zurückgeben
Hoffe, das ist hilft
Hatte die gleichen Probleme auch, ich weiß nicht, ob es ein Bug ist oder nicht, aber ich habe es geschafft, indem ich OnClickListener
zur Implementierung hinzugefügt habe und public void onClick(View v)
implementiert habe, dann auch setOnClickListener(this)
auf der Konstruktor.
Tags und Links java android ontouchevent