我目前正在实现一个应用程序,其中有一个RecyclerView,其中包含几个自定义视图。用户可以从这些视图中的每一个打开一个上下文菜单(需要长按),但通常很难弄清楚,因为他们通常只会执行简单的点击,然后就认为没有更多的了。但是,如果我能给一些UI反馈,它可能会更清晰。想法是一个简单的涟漪动画,突出显示背景,并且不会在简单的单击时完成,而会在长时间单击操作时全部完成。
由于我已经卡在这里两天了,我进行了研究,实际上发现了一些SO问题,例如Cheok Yan Cheng的这个非常好写,他甚至发布了一个视频展示所需效果(我的问题基本上是完全相同的),但是没有好的答案,因为第一个答案说我们应该使用
编辑:
请注意,无法通过
由于我已经卡在这里两天了,我进行了研究,实际上发现了一些SO问题,例如Cheok Yan Cheng的这个非常好写,他甚至发布了一个视频展示所需效果(我的问题基本上是完全相同的),但是没有好的答案,因为第一个答案说我们应该使用
?attr/selectableItemBackground
,但给出的效果与我想要的不同,我尝试了第二种方法,在onLongClick中启动动画,对于简单的点击它并没有什么作用。编辑:
请注意,无法通过
?attr/selectableItemBackground
或创建涟漪xml文件并将其设置为背景来实现预期行为,因为这些将提供正常的onClick动画和不同的longClick动画。再次查看此视频以查看所需效果。
?android:attr/selectableItemBackground
的基本行为,或者简单地创建一个ripple.xml文件并给它一个自定义颜色。 - tom gautot