收缩纹波效果

时间:2018-12-09 19:42:39

标签: android rippledrawable

我在Github中有以下项目:https://github.com/Ali-Rezaei/PadLayout

它包括一个名为fragment_dialpad_animation的布局(用于Dialpad4):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:custom="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageButton
        android:id="@+id/num_pad_btn"
        android:layout_width="@dimen/call_button_width"
        android:layout_height="@dimen/call_button_height"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="20dp"
        android:background="@drawable/circle_blue"
        android:src="@drawable/ic_dialpad_white_24dp"
        tools:ignore="ContentDescription" />

    <LinearLayout
        android:id="@+id/number_pad"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="#FFF"
        android:orientation="vertical">

        <com.github.ali.android.client.customview.view.PadLayout
            android:id="@+id/padLayout"
            style="@style/PadLayoutStyle.Animation"
            android:layout_width="match_parent"
            android:layout_height="320dp"
            custom:numColumns="3"
            custom:numRows="4">

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button1"
                style="@style/PadButtonStyle.Ripple"
                custom:letterGone="false"
                custom:numberText="1" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button2"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="ABC"
                custom:numberText="2" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button3"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="DEF"
                custom:numberText="3" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button4"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="GHI"
                custom:numberText="4" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button5"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="JKL"
                custom:numberText="5" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button6"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="MNO"
                custom:numberText="6" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button7"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="PQRS"
                custom:numberText="7" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button8"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="TUV"
                custom:numberText="8" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button9"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="WXYZ"
                custom:numberText="9" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button10"
                style="@style/PadButtonStyle.Ripple"
                custom:letterGone="false"
                custom:numberText="*" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button11"
                style="@style/PadButtonStyle.Ripple"
                custom:letterText="+"
                custom:numberText="0" />

            <com.github.ali.android.client.customview.view.DialPadKey
                android:id="@+id/button12"
                style="@style/PadButtonStyle.Ripple"
                custom:letterGone="false"
                custom:numberText="#" />

        </com.github.ali.android.client.customview.view.PadLayout>

        <include
            layout="@layout/call_button"
            android:id="@+id/call_button"
            android:layout_width="@dimen/call_button_width"
            android:layout_height="@dimen/call_button_width"
            android:layout_gravity="center"
            android:layout_marginBottom="16dp" />

    </LinearLayout>

</RelativeLayout>

它具有涟漪效应:

<?xml version="1.0" encoding="utf-8"?>
<!-- unbounded ripple effect ?android:attr/selectableItemBackgroundBorderless -->
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/dialpad_button_pressed" />

当前,纹波效应的大小太大。有什么办法可以减少波纹效应?

1 个答案:

答案 0 :(得分:0)

RippleDrawable的半径默认情况下会根据其容器大小自动计算。您可以使用 A tibble: Y x 7 Pouca Media Alta Tipo I Tipo II Tipo III Tipo IV <fct> <fct> <fct> <fct> <fct> <fct> <fct> 1 0 1 0 0 1 0 0 2 1 0 0 1 0 0 0 属性来设置自己的大小。

radius

请参阅:https://developer.android.com/reference/android/graphics/drawable/RippleDrawable.html#attr_android:radius