目前,我想为我的矩形卡产生适当的连锁效果。
我可以实现的涟漪效应是一个小圆圈,只在一个小点击区域内传播。
https://www.youtube.com/watch?v=3zeBFqVPS38
但是,我知道在Android 5中,使用相同的代码集,纹波可以覆盖整个矩形区域。
https://www.youtube.com/watch?v=wEkb-7TDI7k
如何在整个矩形卡中传播涟漪效应?或者,我不应该在Android 6下有这个期望吗?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stateListAnimator="@anim/lift_up"
android:background="?attr/newsRowLayoutSelector"
android:clickable="true"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingBottom="5dp"
android:orientation="vertical" >
<TextView
android:id="@+id/title_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="?attr/newsTitleTextViewSelector"
android:duplicateParentState="true"
android:text="TextView" />
<TextView
android:id="@+id/description_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="?attr/newsDescriptionTextViewColor"
android:textSize="14sp"
android:layout_marginTop="2dp"
android:layout_marginBottom="2dp"
android:text="TextView" />
<TextView
android:id="@+id/date_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:textColor="?attr/newsDateTextViewColor"
android:textSize="12sp"
android:text="TextView" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/news_card_ripple_material_light">
<item android:drawable="@drawable/news_card_material_light" />
</ripple>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="@color/news_card_material_light" />
</shape>
这些是使用的颜色。
<color name="news_card_material_light">#ffffffff</color>
<color name="news_card_ripple_material_light">#ffffcc80</color>
谢谢。
答案 0 :(得分:0)
这是Android M及以上版本的默认行为。 你可以在Google现在的卡片中看到这个例子