问题标签 [rippledrawable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4965 浏览

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

我想以编程方式设置 TextView 对象的背景,但也有涟漪效应。

我可以将背景设置为android:selectableItemBackground,但设置背景时,涟漪效果会丢失。

我还尝试将 a与in放在ImageView一起。并将图像设置为 的背景,而不是 的图像:是的,波纹是存在的,但它似乎在图像的“后面”。TextViewFrameLayoutTextViewImageView

我需要RippleDrawable从位图为背景创建一个吗?我该怎么做?

0 投票
0 回答
1589 浏览

android - XML 中的 Android 波纹效果持续时间

我定义了以下波纹 xml:

当我将它应用到一个小视图时,它很好并且看起来很合理......但是当我将它应用到一个大视图时,波纹需要的时间太长了!

如何更改XML 中波纹的持续时间/最大半径/其他值?

0 投票
0 回答
3756 浏览

android - 具有波纹效果的 Android ListView

我有一个 ListView,每一行都使用自定义背景颜色。我想确保在用户触摸一行时显示默认突出显示,所以我定义了一个带有选择器的可绘制对象,如下所示:

乍一看,它似乎有效。但是,如果我滚动到以前不在屏幕上的行,当我第一次点击该行时,我不会得到涟漪。但是,如果我再次点击它,我确实看到了涟漪。如果我将行从屏幕上滚动出来,然后再重新打开,同样的事情会不断发生。

有任何想法吗??

谢谢!!

0 投票
4 回答
24319 浏览

android - 如何在带有 Android 5.0 Lollipop 的代码(不是 xml)中以编程方式使用 RippleDrawable?

我的波纹有以下代码:

现在我想让用户可以选择自己的颜色,所以我需要以编程方式创建波纹。
我发现了这个,我认为这是正确的方法,但我不知道如何处理。

波纹将在这里使用:

我需要将背景设置为RippleDrawable这样的:

0 投票
3 回答
7582 浏览

android - Spinner 下拉项目彩色背景上的波纹效果 (appcompat-v7 V21)

我尝试对 Spinner 下拉项应用波纹效果,如下所示:

活动.java

simple_spinner_dropdown_item.xml

spinner_ripple.xml

但在下拉列表中,它仅适用于第一项,并且仅当当前选定的项目与第一项不同时。在所有其他情况下,它会用波纹颜色填充背景项目(因为没有波纹效果)。我的代码哪里错了?

已经尝试过:在下拉项目布局的背景上设置固定颜色并在 Spinner 元素下移动波纹效果不起作用,如下所示:

simple_spinner_dropdown_item.xml

活动布局.xml

0 投票
3 回答
3267 浏览

android - 如何在 Android KeyboardView 中实现波纹效果?

我一直在尝试找到一种方法来在 KeyboardView 键被按下时实现涟漪效应。听起来很简单,但我尝试了所有添加波纹的方法,这些方法适用于其他类型的视图(列表视图、按钮等),但完全没有成功。

我的目标是创建一个数字键盘,它看起来像 Lollipop OS 中默认提供的股票计算器应用程序中的键盘:

股票棒棒糖计算器

GitHub ( https://github.com/numixproject/com.numix.calculator ) 中有一个类似的计算器应用程序,它在其键盘上有连锁反应,但当我阅读代码时,它似乎使用数字键的按钮而不是一个键盘视图。

我希望使用 KeyboardView 可以产生涟漪效应,因为我的应用程序已经使用 KeyboardView 实现了自定义数字键盘,我不想不得不将其更改为使用按钮。

我尝试将波纹添加为keyBackground样式中的属性,如下所示:

然后在themes.xml中:

然后是 drawable-v21 文件夹中的 numeric_keypad_ripple.xml:

numeric_keypad_states.xml 是具有按下状态的旧选择器(它曾经被直接声明为keyBackground属性):

numeric_keypad_pressed.xml 和 numeric_keypad_normal.xml 只是每个特定状态的具有颜色的可绘制对象,如下所示(两者完全相同,只是颜色属性不同):

我认为我上面的方法会奏效;但事实并非如此。在我的 Lollipop 设备中,当我按下键盘时,它只显示正常按下的颜色,根本没有任何波纹,与没有波纹的旧实现没有区别。我试过删除图层,因为我认为它与波纹重叠,但仍然不起作用。为波纹添加遮罩也不起作用。

我也尝试过使用rippledrawable作为选择器中的按下状态drawable而不是包装选择器,但它仍然无法正常工作。还尝试使用?android:attr/selectableItemBackground而不是波纹可绘制,但也不起作用。

哦,我实际上是在 Xamarin 而不是原生 Android 上开发应用程序,但我想这应该没什么区别。

0 投票
1 回答
1386 浏览

android - Android Lollipop - 通知中的涟漪效应

我想在 Android Lollipop 的通知中为 ImageView / ImageButton 添加波纹效果。我看到这在 Google Play 音乐上是可能的。但是,我与其他视图一起使用的解决方案不适用于通知。

我在 drawable-v21 中创建了 RippleDrawable

并将这个drawable设置为ImageView的背景

但这根本行不通。你有什么想法如何达到这个效果?

0 投票
2 回答
3226 浏览

android - Android 波纹效果 + 非按钮视图上的高度

我正在尝试将触摸反馈添加到类似于 API 级别 21 中的常规按钮反馈的 LinearLayout 中,就像在这个示例中一样,并且到目前为止还没有成功。

我已经定义了一个像这样的标准波纹可绘制:

并使用了 Google在此处提供的 StateListAnimator :

在定义动画师和波纹可绘制之后,我将它们添加到我的 LinearLayout 中,如下所示:

这个想法是将此 LinearLayout 用作按钮,因为对我来说插入各种类型的文本并在其中处理 ImageView 定位要简单得多(与按钮可绘制对象相反)。

根据这个问题,只要视图的背景没有透明度,就可以单独添加波纹效果或动画。

我不确定这是否是与上述问题相关的问题,但鉴于标准按钮设法同时使用波纹和高程动画反馈,我认为在其他视图上也可以实现此效果。

对此问题的任何见解将不胜感激。

0 投票
1 回答
4932 浏览

android - 带有背景的android波纹按钮

我使用 XML 在 android 5.0 中成功创建了一个波纹按钮。我的代码如下:

我的按钮有问题:按钮的背景颜色不会改变。我也试过:

背景仍然保持透明(colorAccent 也不起作用)。

如果不通过

财产?

谢谢

0 投票
6 回答
14865 浏览

android - How to make a ripple effect over a linear layout, without overriding the background color on its children?

I have a LinearLayout that looks like this. enter image description here

I want each row to be clickable. The LinearLayout code for a row looks like this:

How can I add a ripple effect that expands over the entire row (parent) - not just one child view in the row? The tricky part here is to let the ripple go over the two colored row.