Material颜色学习笔记

近期对Material的颜色进行了初步的理解,为了防止之后遗忘,特此记下心得。

主要颜色及其用场大致如下:

colorPrimary:软件的主色调,当下大多数软件颜色都是某个主色 + 白灰底 + 黑色文字组成

textColorPrimary:ToolBar标题颜色 EditText文字颜色

colorPrimaryDark:状态栏颜色(暂未验证)

colorAccent:checkbox、RadioButton的颜色

android:textColor:默认的TextView的文字颜色、Snackbar文字颜色

android:windowBackground:界面的背景颜色

android:colorControlNormal:EditText下划线的颜色(其他使用场景尚待学习)

心得:

1、标题栏的Style和软件主体Style分开:

标题栏最好不要使用软件主体的Style,因为colorPrimary和textColorPrimary分别会被用到标题栏的背景色和文字色,这时例如背景色colorPrimary是深蓝色,那文字色textColorPrimary一般会用白色,但textColorPrimary除了用作标题栏颜色以外,还会用到EditText的文字色等地方,软件里大多数EditText是显示在界面背景色上的,也就是说一般显示在白灰色上,这时,textColorPrimary也是白色的话,文字将会看不见。

所以,软件主体Style和标题栏的Style分开。在主体Style中colorPrimary仍然设定为软件主色,例如蓝色,textColorPrimary会设定为黑色,以便EditText等控件的展示。在标题栏的Style中,同样colorPrimary也可以设定为软件主色(有时也可以设定为白色标题栏),textColorPrimary会设定为白色,该白色文字,仅在标题栏上显示。

2、android:textColor使用有矛盾

android:textColor会显示在默认的TextView中和Snackbar上,Snackbar默认背景色是黑色,所以它的文字一般得是白色,但多数时候TextView的文字颜色是黑色,所以这里有些矛盾。Snackbar本身是为了方便展示一些提示信息,所以它不适合用繁琐的代码设定它的颜色样式,也暂未找到一次性为其设定样式的办法,所以暂时认为android:textColor设定为白色比较合适。TextView需要在软件的各个地方显示,除了黑色以外,还会显示成灰色、浅灰等次要颜色,所以TextView的颜色风格设定多数时候无法使用默认的Style,也就说一般每次都要为其设定一个Style,所以在这个Style中,颜色不使用android:textColor即可。

目前对于Material的学习仍在初级阶段,等有新的心得再来补充。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,280评论 25 709
  • 内容抽屉菜单ListViewWebViewSwitchButton按钮点赞按钮进度条TabLayout图标下拉刷新...
    皇小弟阅读 47,046评论 22 665
  • 【木心公益书屋我写我心】 时间:2017.08.12 作者:花缘过客 友谊 从小到大,陪伴在身边的朋友也在不断的变...
    花缘过客阅读 1,301评论 0 1
  • 公司:宁波大发化纤有限公司 姓名:冯玉停 期数:六项精进224期感谢二组学员,234期感谢三组志工,260期感谢一...
    尘埃wyzh阅读 1,175评论 0 0
  • 1999年5月2日,是个星期日,早晨,我像往常一样去游泳馆游泳,上午在单位值班,中午回到家里。刚到家我就觉得...
    史万铎阅读 2,812评论 0 1

友情链接更多精彩内容