【问题标题】:How to find the color of a view如何找到视图的颜色
【发布时间】:2015-05-25 03:09:44
【问题描述】:

我有一个多窗格视图:很像这样:

我得到这个的方法是使用海拔:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:elevation="4dp"
    android:background="@android:color/white">

该滚动视图是右侧的详细视图。 Android 在左侧的列表视图中分配了较暗的背景以“显示”海拔。太棒了,视图看起来很完美。但是我想突出显示列表中的选定项目。

列表视图:

选中状态:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/some_color" android:state_activated="true"/>
</selector>

我的问题是我需要定义一些颜色,并且我想让它比列表中项目的颜色深一点。但是我不能 100% 确定那个颜色到底是什么。

我可以通过调试找到吗?或者更好的是,有人知道海拔对视图颜色的真正影响吗?

【问题讨论】:

    标签: android android-elevation


    【解决方案1】:

    Android 实际上并没有根据海拔对背景进行不同的着色;海拔属性的唯一影响是在 5.x 设备上显示阴影。它只是看起来更暗,因为您为 ScrollView 提供了白色背景,而 Activity 的默认背景是灰白色。如果您想确定该颜色,我建议您简单地截取屏幕截图并使用应用程序查看这些像素的颜色;我发现拾色器效果很好。如果您希望该背景颜色在任何地方都保持一致,我会手动将您的 ListView 的背景设置为该颜色。

    【讨论】:

    • 太棒了,很有帮助!必须有一种方法可以从某个地方获取这些颜色,对吧?调试器或查看 android 资源文件。
    • 默认的活动背景可能因设备和版本而异,因此没有通用定义的地方。同样,找出颜色的最佳方法是截取屏幕截图,然后使用专为此设计的众多工具中的任何一种提取颜色。
    猜你喜欢
    • 1970-01-01
    • 2016-02-17
    • 2021-08-09
    • 2017-12-13
    • 2012-04-11
    • 2021-01-05
    • 2011-08-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多