Ich habe ein XML-Layout, auf dem ich OnTouchListener, die Aufgabe ist Finger Streichen Richtung erkennen; Wie auch immer, es funktioniert nur, wenn der Wischvorgang nur auf dem Layout durchgeführt wird, aber nicht auf seinen Elementen (wie ImageViews, Buttons usw.). Wie schreibe ich es um, um das gesamte Layout zu bearbeiten, aber vermeide es, Dutzende von Listenern für alle Elemente zu erstellen?setOnTouchListener arbeitet nur für eine Ansicht
Layout:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/main_layout"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
>
</RelativeLayout>
Code:
View relative = findViewById(R.id.main_layout);
relative.setOnTouchListener(...)
Dies ist nur auf button1 arbeiten. – johnyX
dann fügen Sie mehr hinzu, wie lassen Sie mich Ihnen zeigen. –
Ja, ich weiß, aber genau das wollte ich vermeiden. Ich habe viele Elemente auf dem Layout und ich müsste das x mal erstellen. – johnyX