草庐IT

android - 为自定义 CompoundButton 添加波纹效果

我有以下自定义CompoundButton:publicclassCustomCompoundButtonextendsCompoundButton{publicCustomCompoundButton(Contextcontext){this(context,null);}publicCustomCompoundButton(Contextcontext,AttributeSetattrSet){super(context,attrSet);setup();}privatevoidsetup(){setBackgroundResource(R.drawable.button_sele

Android Lollipop 按钮波纹不显示

当在XML布局代码(androidL)中定义常规按钮时,默认情况下它会在按下时产生涟漪效果,效果很好。但是,当定义了常规按钮并向按钮添加特定背景色时,波纹效果将被移除。我将如何再次将按钮波纹添加到按钮? 最佳答案 您可以将按钮背景属性设置为您自己的RippleDrawable。参见here. 关于AndroidLollipop按钮波纹不显示,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

android - 在 TextView 对象上设置背景并保持波纹效果

我想以编程方式设置TextView对象的背景,但也想对其产生链式react。我可以在背景设置为android:selectableItemBackground时使用,但是在设置背景时涟漪效果会丢失。我还尝试将ImageView与TextView放在FrameLayout中。并且不将图像设置为TextView的背景,而是作为ImageView的图像:是的,波纹在那里,但它似乎在图像“后面”。我是否需要从位图中为背景创建一个RippleDrawable?我该怎么做? 最佳答案 我遇到了和你一样的问题并使用修复了它android:fore

android - 工具栏上的波纹效果被切断

我在我的应用程序中使用了一个Toolbar并用菜单对其进行了扩充。我这里有一个问题,因为波纹效果自动添加到按钮,但最左边的按钮的波纹效果被菜单区域的边界切断。您可以看到波纹扩大,但随后在左侧关闭。知道如何解决这个问题吗? 最佳答案 我也遇到过这个,玩了之后我发现了我们的习俗ThemeOverlay设置了背景。尝试删除android:background来自您的工具栏样式和主题。看下面我注释掉了:@color/toolbar.之后它按预期工作。@color/text_primary@color/text_secondary@color

android - 使用包含另一种背景颜色的项目在 RecyclerView 中获得波纹效果

我需要在我的RecyclerView元素中有一个简单的波纹效果,它有一个背景颜色集。因为它们已经设置了背景颜色(蓝色),所以我无法将背景设置为drawable/ripple.xml:所以我将ripple.xml更改为:还是不行。:(编辑:显然,波纹颜色隐藏在背景颜色后面,因此几乎看不到。但是可以在背景中看到它的颜色(如果我将color_view_pressed设置为深红色)。有什么办法可以实现吗?我已经尝试了所有可能的解决方案。不知何故,它与ListView配合得很好。我不明白这是怎么回事。 最佳答案 在用于项目的布局的根ViewG

android - 如何在圆角布局上添加波纹效果?

这个问题在这里已经有了答案:Howtocreaterippleeffectinsimplelayout(11个答案)关闭5年前。我想在带有圆角的布局上设置波纹效果。我该怎么做?

android - 更改 View 颜色但保持波纹和触摸状态

开箱即用,您可以从以下位置获得白色波纹/触摸状态:?attr/selectableItemBackground我希望能够制作任何颜色,波纹和触摸状态仅根据我设置的颜色工作。如果我能通过android:theme做到这一点就好了我需要它来运行API15+我知道我可以做一个选择器和一个波纹,但是我必须为每种颜色做一个选择器,因为你不能在API21之前的xml中做attr。如果我只为背景设置一种颜色,那么波纹和触摸状态就不起作用。我希望它尽可能简单和可重用。有没有我遗漏的东西或任何相对干净的解决方案。 最佳答案 波纹颜色似乎是由color

android - ImageView 下方绘制了波纹

我在FrameLayout中有一个ImageView和一个CheckBox。尽管CheckBox位于ImageView上方,但其涟漪反馈绘制在ImageView下方。有什么办法可以在上面画波纹吗?尝试添加高程值但没有任何改变。 最佳答案 似乎涟漪是绘制在容器背景之上的。所以我将CheckBox放在另一个容器中,将容器的背景设置为透明,并且波纹正确显示。 关于android-ImageView下方绘制了波纹,我们在StackOverflow上找到一个类似的问题:

android - 如果 actionBar/Toolbar 是白色的,菜单项上没有波纹

我有一个白色的工具栏,其中的菜单项显示为Action,是来自Material图标的黑色矢量Assets。菜单项点击没有波纹效果,因为波纹效果也是白色的。如果工具栏背景更改为其他颜色,例如蓝色,则会出现波纹。如何更改菜单项波纹颜色以使其在白色背景上可见?我试图在AppTheme中更改colorControlHighlight,但它没有更改菜单项波纹颜色。风格#ffffff布局菜单Activity@OverrideprotectedvoidonCreate(@NullableBundlesavedInstanceState){super.onCreate(savedInstanceStat

Android 背景在按下时呈波纹状,但在选择时呈纯色?

我正在尝试创建一个在按下时会出现波纹的可绘制对象,但在调用view.setSelected(true)时,它会保持纯色作为背景。以下文件放在我的drawable-v21文件夹中:我已经尝试过上述方法,当它被选中时它会保持纯色背景,但没有波纹效果,而只是一种淡入效果。如果我只有没有选择器的涟漪,按下时它会正确地涟漪,但显然我没有selected状态。我怎么能将两者都烘焙到单个背景可绘制对象中? 最佳答案 你需要做的是:1.在drawable-v21文件夹中创建一个ripple_effect.xml文件2。在drawable文件夹下创建