Verwendung von setOnTouchListener in C # (Xamarin)

7

Hallo Leute, könnt Ihr mir ein Beispiel für setOnTouchListener in C # geben? Ich habe es versucht, aber ich bringe einige Fehler.

%Vor%     
user3836246 09.08.2014, 22:22
quelle

2 Antworten

22

Sie entweder a. Verwenden Sie das Ereignis Touch :

%Vor%

Oder Sie können die Schnittstelle IOnTouchListener explizit implementieren (C # hat keine anonymen Klassen). Beachten Sie, dass Sie bei der Implementierung von Java-Interfaces auch von Java.Lang.Object erben müssen, da wir ein Handle zur Java-Seite der Story benötigen (dies ist offensichtlich nicht erforderlich, wenn wir das Touch -Ereignis verwenden).

%Vor%

Dann setze es mit:

%Vor%

Beachten Sie, dass bei Verwendung des letzteren Ansatzes auch die Übergabe von Verweisen auf Objekte, die Sie ändern möchten, in der Klasse OnTouchListener gehandhabt wird. Dies ist beim C # -Ereignis nicht erforderlich.

BEARBEITEN: Als Randnotiz, wenn Sie das Touch -Ereignis oder ein anderes Ereignis verwenden, denken Sie bitte daran, ein guter Bürger zu sein und die Veranstaltung auszuhängen, wenn Sie nicht mehr daran interessiert sind. Im schlimmsten Fall, wenn Sie vergessen, das Ereignis zu lösen, werden Sie Speicher verlieren, weil die Instanz nicht bereinigt werden kann.

Verwenden Sie also im ersten Beispiel keine anonyme Methode:

%Vor%

Und denken Sie daran, es auszuhängen:

%Vor%     
Cheesebaron 09.08.2014 22:52
quelle
0
%Vor%

Nach einer anderen Frage, die Sie gestellt haben, rate ich, dass Sie den onTouch-Listener in die onCreate-Methode verschieben müssen

    
Rob85 09.08.2014 22:25
quelle

Tags und Links