Android 中的 theme 和 style(3)

  • 时间:2019-02-24 20:43 作者:zidea 来源:zidea 阅读:618
  • 扫一扫,手机访问
摘要:Themes通常定义 Activity 的长什么样Theme.MaterialTheme.Material.DialogTheme.Material.Light.DarkActionBar主题通常是固定以 Theme 点什么这样形式开头,Overlay themesThemeOvery.Materi

Themes

通常定义 Activity 的长什么样

  • Theme.Material
  • Theme.Material.Dialog
  • Theme.Material.Light.DarkActionBar
    主题通常是固定以 Theme 点什么这样形式开头,

Overlay themes

  • ThemeOvery.Material.Light
  • ThemeOvery.Material.Dark
  • ThemeOvery.Material.Dialog

主题颜色

  • colorForeground
  • colorForegroundInverse
  • colorBackground
  • colorBackgroundFloating

通常我们会有前景色和背景色,根据是浅色主题还是深色主题,他们前景色和背景色可能是黑白组合或者白黑组合。通常我们不会用简单黑白来分别表示深浅色。

这里我们以 switch 组件为例,switch 组件中包含了多种颜色,我们可以定义 switch 前景色和背景色,其实这些颜色都基本上都是根据黑白的变化而得来的。

<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_enabled="false"        android:color="?attr/colorForeground"        android:alpha="?attr/disabledAlpha"/>    <item android:state_checked="true"        android:color="?attr/colorControlActivated"/></selector>

这里定义 switch 不同状态下颜色搭配。在禁用情况根据前景色降低透明度来表示禁用。

  • textColorPrimary
  • textColorPrimaryInverse
  • textColorSecondary
  • textColorSecondaryInverse

在textColor 文本颜色中,primary 也就是主色用于让客户一目了然,清晰可见可以引起客户注意的文字上。所以就要求文字颜色显眼。Secondary 文字颜色会根据 material 中的规范计算得来,通常是 primary 的 84% 或者 56% 的透明度。

  • <font color=#ff4081>colorAccent</font>
  • colorPrimary
  • colorPrimaryDark
    colorControlNormal(默认为 textColorSecondary)
    colorControlActivated(默认为 colorAccent)
    colorAcent 通常用于组件选中的情况,比照强烈,假如深色主题可以考虑用浅色的 colorAccent,colorControlNormal 为默认的组件的颜色,而后组件有 icon 强烈推荐将 icon 设置 colorControlNormal,为了保持 icon 在不同组件中一致性,所以推荐使用 colorControlNormal 设置 icon (图标)的颜色。
  • 全部评论(0)
最新发布的资讯信息
【系统环境|】2FA验证器 验证码如何登录(2024-04-01 20:18)
【系统环境|】怎么做才能建设好外贸网站?(2023-12-20 10:05)
【系统环境|数据库】 潮玩宇宙游戏道具收集方法(2023-12-12 16:13)
【系统环境|】遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!(2023-10-12 17:31)
【系统环境|服务器应用】克隆自己的数字人形象需要几步?(2023-09-20 17:13)
【系统环境|】Tiktok登录教程(2023-02-13 14:17)
【系统环境|】ZORRO佐罗软件安装教程及一键新机使用方法详细简介(2023-02-10 21:56)
【系统环境|】阿里云 centos 云盘扩容命令(2023-01-10 16:35)
【系统环境|】补单系统搭建补单源码搭建(2022-05-18 11:35)
【系统环境|服务器应用】高端显卡再度登上热搜,竟然是因为“断崖式”的降价(2022-04-12 19:47)
手机二维码手机访问领取大礼包
返回顶部