首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android 样式系统 | 主题背景属性

在实际开发中,您通常希望根据主题背景改变颜色,因此您应该始终通过主题背景属性来引用颜色。 这意味着您可以将如下代码视为有代码异味 (Code smell): 的 Colors 文件 您可以通过在不同的配置中添加不同的值来改变颜色 (例如,在 res/values/colors.xml 中和在 res/values-night/colors.xml 中的备选值里均定义...将颜色声明保持为字面值,您就可以自定义应用使用的颜色调色板,并在主题背景级别修改它们,这会让 color.xml 较小且易维护。 这种方法的额外好处是,布局/样式引用这些颜色时复用性变得更高。...它并没有定义一个新的颜色资源的方式来手动为您 (每一个配置文件) 的 primary 颜色设置 alpha 值,而是通过改变当前主题背景中的 colorPrimary 的方式。...仅在 API 23 中添加了 alpha 组件,因此,如果您的最小 sdk 低于这个版本,请确保使用支持此行为的 AppCompatResources.getColorStateList (并始终使用

1.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android 自定义View 之 Mac地址输入框

    下面我们将xml中的TextView改成com.google.android.material.textview.MaterialTextView,你会发现也不会报错,而我们查看MaterialTextView...现在你在java代码和xml中就都可以正常使用了。我们在使用系统的View的时候通常会在xml中设置一些参数样式,那么自定义里面怎么设置样式呢?...每一个框的大小、背景颜色、边框颜色、边框大小、文字大小、文字颜色、分隔符,一般来说默认是英文分号( : ),不过也有使用小横杠的( - ),那么怎么去设置样式呢?...,然后进行赋值,注意一点就是数值类型的需要默认值,有一些默认颜色值,就是我刚才写到colors.xml中的String类型不需要。...View   现在自定义View写好了,可以使用了,修改activity_main.xml中的代码,如下所示: <?

    1.2K20

    浅谈FloatingActionButton(悬浮按钮)

    一、介绍 这个类是继承自ImageView的,所以对于这个控件我们可以使用ImageView的所有属性 android.support.design.widget.FloatingActionButton...二、使用准备, 在as 的 build.grade文件中写上 compile 'com.android.support:design:22.2.0' 三、使用说明 xml文件中,注意蓝色字体部分 backgroundTint=""---------------按钮的背景颜色,不设置,默认使用theme中colorAccent的颜色 3、app:rippleColor=""-----...---------------点击的边缘阴影颜色 4、app:elevation=""----------------------边缘阴影的宽度 5、app:pressedTranslationZ="16dp..."-----点击按钮时,按钮边缘阴影的宽度,通常设置比elevation的数值大 另外我们希望点击按钮一个颜色,正常状态一个颜色 以提高用户体验,那么就是drawable文件夹中创建文件 floatbutton.xml

    3.6K90

    动画必须有(二):悬浮菜单了解一下!

    前言 悬浮按钮是我非常喜欢的, 可以把最关键的功能放入到悬浮按钮中. 比如日记app里的新建日记, 阅读类app里的喜欢. 稍微处理一下可以将悬浮按钮扩展成悬浮菜单, 来看下实现吧!...搭配Snackbar 官方推荐配合Snackbar来使用, 这都不多说了. ? 配合Snackbar 显示和隐藏 然后还有就是悬浮按钮的隐藏和显示函数....隐藏和显示 颜色 可以设置点击颜色app:rippleColor, 以及背景颜色app:backgroundTint. 我将背景色改成蓝色, 点击水波纹扩散变为紫色, 效果图如下: ?...一个是扇型的, 一个是线型的. xml version="1.0" encoding="utf-8"?...在xml中加入app:fabSize="mini"就变成mini尺寸的了. 所以在设置动画和位置的时候不是将按钮全部放置在同一位置, 需要修正位置.

    1.8K30

    探索 Android Design Support Library v28 新增内容

    accent colour 填充按钮的背景颜色, 同时使用白色作为按钮的文字颜色....app:rippleColor: 使用此颜色定义按钮的水波纹效果的颜色 app:backgroundTint: 用于给按钮的背景着色.如果你想要改变按钮的背景颜色, 使用这个属性而不是 background...如果的确如此, 你可以使用如下的 ChipGroup 本身的属性为子 Chip 视图添加一些间距: app:chipSpacing: 在横纵轴方向均添加间距 app:chipSpacingHorizontal...app:backgroundTint: 用于为视图的背景上色. 如果你想要设置视图的背景颜色, 那么应该用 android:background 属性. 这样会确保视图样式的稳定性....结论 在我看来, 这些是对 Support Library 的一些简洁补充 -- 我期待着能够立即使用材质主题组件.

    1.9K20

    关于MaterialButton你需要知道的事

    圆角和着色以及宽高都奏效 我是应用主题后的MaterialButton 此时出现的几个坑 你会发现你设置的宽高属性并没有应用到MaterialButton控件上,就连你为他backgroundTint...着的颜色都不对,那么原因究竟为何呢?...这是由于系统自身为MaterialButton控件设置了默认的属性,所以你的操作其实并不会生效 那么我们就要覆写这些属性,让MaterialButton控件由我们管控 在res→values→styles.xml...最后一步 在res→values→styles.xml中AppTheme的parent要改为Theme.MaterialComponents.Light.NoActionBar 此时你的MaterialButton...看网上有说使用implementation 'com.google.android.material:material:1.0.0-beta01'这个版本的依赖可以,But需要注意,如果你考虑使用TabLayout

    90930

    Android 自定义View 之 简易输入框

    ② XML样式   在设置样式之前需要先知道我们的自定义View要做什么,这是一个简易输入框,可以用来做验证码输入或者密码输入,输入框4~6个,主要就是数字输入,在attrs.xml文件中,里面我们可以写自定义的样式...,将边框保存起来,再根据当前绘制位置和是否获取焦点设置画笔颜色,这样就可以实现当前输入框的颜色变化,比如我没有输入的时候是黑色边框,当我输入第一个值的时候,第一个输入框的边框颜色变成绿色,输入完第一个,...中的操作差不多,我就不重复说了,下面我们来看输入。...View    关于使用,我在些这个文章的时候这个自定义View已经加入到仓库中了,可以通过引入依赖的方式,例如在app模块中使用,则打开app模块下的build.gradle,在dependencies...可以使用了,修改activity_easy_edittext.xml中的代码,如下所示: xml version="1.0" encoding="utf-8"?

    1.1K40

    Android Material UI控件之MaterialButton

    添加依赖   在你的app下的build.gradle中的dependencies闭包中增加如下依赖,然后Sync同步一下,你就可以名正言顺的使用里面的组件了。...现在是默认的颜色,你肯定会使用其他的颜色,然后要设置背景,注意,这里不再使用background来设置,而是通过backgroundTint来设置 app:backgroundTint="@color/...那么你可能会问这两种格式有什么区别,区别就在于,.png没有代码,.xml是有代码的,它通过path路径来画图标,你不了解就不会看的很明白。...下面就使用图标按钮,在material_button.xml中增加按钮,如下图所示 ? 运行一下: ? 现在你可以看到图标出现在文字的的左边。那么如果要让它在右边呢?...现在我们都知道这个图标是.png的白色图标,如果我现在要改变这个图标的颜色,现在我既不想重新弄一个图标,又不想通过代码来改变这个颜色。

    3.3K20

    再不迁移到Material Design Components 就out啦

    下面我们通过一些常见的迁移方案来了解一下这些问题 文字栏位改变 在 MDC 中,文字字段默认样式发生了改变。改进版本是经过用户调查研究的。 ? 我们建议您使用这个版本,来提高可用性和可配置项性。...下面这几种情况应该考虑 在布局中写的控件如果有对应的 MDC 控件的话,直接使用 MDC 控件 任何的风格,默认风格和默认风格属性应该改变成 MDC 版本 在编程中或者自定义类的父级类使用的任何控件都应该为...MDC窗口小部件使用这些属性来为其背景,文本,图标等着色。要了解哪些小部件使用哪种颜色,需要检查源代码中的默认小部件样式。 AppCompat和框架中还存在一些颜色,但不再适用于此新系统。...如果你想要改变字体的话,建议也把剩余的 12 修改了,以保持APP中字体的一致性。...需要注意的是要清空 backgroundTint,因为在默认的 style 中,backgroundTint 为 colorPrimary <!

    3.2K30

    Android Material Design系列之FloatingActionButton和Snackbar

    这个系列都是主讲的Material Design风格的控件,所以都是控件的一些基本使用,也会扩展讲一些与这个控件相关的东西和效果,如果都会了的同学,可以不看这个系列。...默认正常显示时的背景颜色 app:elevation :FloatingActionButton阴影的深度,默认时的阴影 app:rippleColor:FloatingActionButton点击时的背景颜色...它的使用方式也是非常的简单,跟Toast差不多,代码如下: final Snackbar snackbar = Snackbar.make(view, "关注非著名程序员公众号了吗?"...添加icon和改变Snackbar的位置 修改了背景色,文字按钮颜色,是不是还不过瘾?看看我们如何在Snackbar上添加上一个icon图片。其实也非常简单,和修改样式的过程差不多。...Snackbar的位置 其实改变Snackbar的位置和设置icon的位置布局大同小异,代码如下: // 获取 snackbar 视图 View snackbarView = snackbar.getView

    1.8K60
    领券