android - Ripple、colorPrimary 或 colorAccent 的颜色应该是什么? ( Material 设计)

标签 android colors material-design ripple design-guidelines

我正在阅读 Material Design Guidelines但如果不是黑色(带 alpha),我不知道波纹的颜色应该是什么。

例如,我有一个 colorPrimary = blue 和 colorAccent = red 的应用。实际上我正在使用 colorAccent(带 alpha),如果我想要与波纹不同的黑色颜色,我应该使用 colorPrimary(带 alpha)?

我检查了谷歌的所有应用,但他们从不使用带颜色的涟漪。

像我现在这样的图像:

ripple

最佳答案

对彩色波纹使用 26% 的 alpha。

Android L 不支持颜色状态列表中的主题属性和 <ripple>元素没有 alpha channel ,但对于有界波纹,您可以执行以下操作:

<ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="?android:attr/colorAccent">
    <item android:id="@android:id/mask">
        <color android:color="#42ffffff" />
    </item>
</ripple>

这不适用于无限涟漪。或者,由于您知道自己的强调色,您可以定义 26% 的 alpha 版本或使用颜色状态列表。这两种方法中的任何一种都可以很好地处理无限的涟漪。

<ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="@color/accent_26" />

res/values/colors.xml:

<resources>
    ...
    <color name="accent">#ff33b5e5</color>
    <color name="accent_alpha26">#4233b5e5</color>
</resources>

res/color/accent_alpha26.xml:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/accent"
          android:alpha="0.26" />
</selector>

关于android - Ripple、colorPrimary 或 colorAccent 的颜色应该是什么? ( Material 设计),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28484369/

相关文章:

android - 自动选择 ListView 内的复选框 - android

graphics - 了解颜色

Angular 2 Material Design 具有分层缩进的多选下拉菜单

android - 任何人都使用过 APKTool,Android 反编译器?

Android Studio Proguard 配置文件

android - 我怎样才能像我的例子一样创建一个屏幕?

javascript - 单击时为数组创建新的未使用颜色的函数

assembly - 在模式 13 中读取像素时出现错误数据(386 程序集 - DOS)

使用 Material-UI : where to find, 的 SVG 图标如何设置样式?

java - ListView 的自定义行