[JAVA] Implementieren Sie die Welligkeitsdarstellung in Bildern auf Android

Was du machen willst

Implementieren Sie die Welligkeitsdarstellung in Bildern auf Android

Denkweise

Schließen Sie die ImageView, auf die Sie den Ripple-Ausdruck anwenden möchten, mit FragmentLayout ein Geben Sie das Vordergrundattribut für FragmentLayout an, damit Sie beim Tippen auf FragmentLayout tippen können. Geben Sie den Bereich und die Farbe an, auf die der Welligkeitsausdruck mit dem Vordergrundattribut angewendet wird Das Vordergrundattribut bezieht sich auf XML, das separat erstellt wurde Durch Angabe des Vordergrundattributs wird FrameLayout zur obersten Ebene, sodass das Tap-Ereignis von FragmentLayout erfasst wird.

Implementierung

XML des Hauptbildschirms der App

activity_main.xml


    <FrameLayout
        android:id="@+id/image_view"
        android:layout_width="150dp" //Punkt 1: Stellen Sie die Größe von FragmentLayout und ImageView gleich ein
        android:layout_height="50dp"
        android:padding="0dp" //Punkt 2: Das Auffüllen wird auf 0 dp gesetzt, damit sich der Welligkeitsbereich und ImageView genau überlappen.
        android:foreground="@drawable/btn_ripple"> //Punkt 5: Vordergrund bezieht sich auf den Dateinamen einer anderen XML-Datei, die "Welligkeitsbereich" und "Farbe zum Zeitpunkt der Welligkeit" definiert.

        <ImageView
            android:id="@+id/image_view2"
            android:scaleType="fitXY" //Punkt 3: Das Seitenverhältnis ist variabel, sodass FragmentLayout und ImageView gleich groß sind.
            android:layout_width="150dp"
            android:layout_height="50dp"
            android:layout_margin="0dp" //Punkt 4: Der Rand wird auf 0 dp gesetzt, damit sich der Welligkeitsbereich und ImageView genau überlappen.
            android:src="@drawable/long_circle" />
    </FrameLayout>

btn_ripple.xml


//Punkt 1: Der Dateiname sollte der sein, der durch das obige Vordergrundattribut angegeben wird.
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/colorRipple2"> //Punkt 2: Geben Sie die Farbe zum Zeitpunkt der Welligkeit an
    <item
        android:id="@android:id/mask" //Punkt 3: Dies ist immer eine "Maske". Auch wenn "id"/Auch wenn es einen Ort gibt, an dem "Maske" angegeben ist.
        android:drawable="@drawable/long_circle" /> //Punkt 4: Geben Sie den Welligkeitsbereich an. (Beziehen Sie sich einfach auf die ImageView, die Sie kräuseln möchten
</ripple>

Recommended Posts

Implementieren Sie die Welligkeitsdarstellung in Bildern auf Android
[Android] Hinweise zu XML
Passen Sie die Listenansicht auf Android an
Mehrteilige Übertragungsbibliothek auf Android
Verwenden Sie die serielle Kommunikation unter Android
ROS App Entwicklung auf Android
[Android] Implementieren Sie Adblock in WebView
Android-Welleneffekt (benutzerdefinierte Ansicht)