我使用以下xml drawable作为我的recyclerview列表项的背景。
触摸选择器。xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="true"
android:drawable="@color/green_text_500"/>
<!-- Default, "just hangin' out" state. The base state also
implements the ripple effect. -->
<item android:drawable="@drawable/touch_selector_base" />
</selector>
触摸选择器底部。xml
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/light_grey">
<item android:id="@android:id/mask" android:drawable="@color/light_grey" />
<item android:drawable="@color/dark_grey"/>
</ripple>
在列表项中,我正在使用触摸选择器。xml在我的列表_item _quote中如下所示。xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="86dp"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:clickable="true"
android:focusable="true"
android:background="@drawable/touch_selector"
>
// layout
</LinearLayout>
我有另一个xml绘图touch_selector_dark.xml和touch_selector_base_dark.xml
在我的recycler视图适配器中,我根据索引在这两个可提取项之间切换。对于偶数索引,我使用较暗的可绘制索引,对于奇数索引,我使用较亮的背景来产生交替效果。但问题是连锁反应没有起作用。
以下是颜色:
浅灰色=#5b
dark_grey=#212121
green_text_500=#37863a
我认为您的ripple文件无效,您可以检查:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape android:shape="rectangle">
<solid android:color="@color/dark_grey"/>
</shape>
</item>
</selector>
您可以使用android:前台="@绘图/touch_selector"
来显示涟漪效果,也可以使用android: background="
来设置任何其他可绘制的背景。
试试这个对我有用
android:clickable="true"
android:focusable="true"
android:foreground="?attr/selectableItemBackground"
在recycleview列表布局中使用此行
android:background="?android:attr/selectableItemBackground"
我一直在为Lollipop(API 21)开发一个应用程序。 XML:
最小SDK为21。当我点击回收器适配器中的cardview时,不会产生连锁反应,只会进入下一个屏幕。recyclerview位于片段内部。 适配器代码,其中我对每个项目进行了onClick。
好的,所以我知道涟漪效应是唯一可用的Lollipop和以上。但是,当设置ImageButton时,我仍然无法获得像“常规”按钮一样的涟漪效果,只显示一个图像(和透明bg)。。。 我添加了AppCompat v7,并将第二个布局放在我的drawable/layout-v21文件夹中,该文件夹中有以下按钮: 但背景是灰色的,纹波(也是灰色的)无法定制。 所以,如果我只需要一个很好的ripple dra
我想在我的应用程序中使用水波涟漪效果,这种效果会在触摸区域反复出现,我已经访问了站点中可用的示例代码,但涟漪似乎被像素化了。 谁能帮我,实现活水涟漪效应?。我发现很难实施它。
我正在试图找出为什么我的涟漪效应不符合我放置它的形状。下面是我正在使用的代码: 这是我设置到ImageViews背景的多用途按钮 这是我正在研究的可抽屉: 正如您在这个版本中所看到的,虽然它已经修复了现在在边界内的问题,但它不再保持涟漪效应;它缓慢地将背景色转换为第二种颜色,而不是产生实际的涟漪效果。 另外,为了明确起见,我还尝试将形状移动到它自己的可绘制文件(名为testing2),然后像下面这
我也尝试将放入中,但徒劳无功。