大家都知道CSS,Android中也可以为界面定义全局、公用的Style。Styles和Themes都是资源,存放在res/values文件夹下。

Style:是一个包含一种或者多种属性的集合,可以将其作为一个单位用在布局XML中。比如,我们可以自定义TextView的风格——定义文本的字号大小和颜色。

<resources> <!-- textView --> <style name="StyleTextInfo1"> <item name="android:textSize">18.0sp</item> <item name="android:textColor">#ffffffff</item> <item name="android:paddingLeft">0.0dip</item> <item name="android:paddingRight">0.0dip</item> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_marginTop">3.0dip</item> <item name="android:layout_marginBottom">1.0dip</item> <item name="android:layout_gravity">center_vertical</item> <style><style name="StyleTextInfo1" mce_bogus="1"> <item name="android:textSize">18.0sp</item> <item name="android:textColor">#ffffffff</item> <item name="android:paddingLeft">0.0dip</item> <item name="android:paddingRight">0.0dip</item> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_marginTop">3.0dip</item> <item name="android:layout_marginBottom">1.0dip</item> <item name="android:layout_gravity">center_vertical</item> </style> </resources>

引用:

<!-- 引用定义好的TextView样式,如果这里的属性和样式里定义的属性重复,则这里会替换覆盖掉样式里定义的属性--> <TextView android:id="@+id/traderName" android:text="@string/traderName" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/> <Spinner android:id="@+id/traderNameS" android:layout_width="fill_parent" android:layout_height="wrap_content"> </Spinner> </TableRow>

Theme:是一个包含一种或者多种属性的集合,我们可以将其作为一个单位,用在程序中所有的Activity当中或者用在程序中的某个Activity当中。

<style name="newtheme" parent="android:Theme.Black"> <item name="android:windowNoTitle">true</item> <item name="android:textSize">24sp</item> <item name="android:textColor">#FFFF0000</item> <style><style name="newtheme" parent="android:Theme.Black" mce_bogus="1"> <item name="android:windowNoTitle">true</item> <item name="android:textSize">24sp</item> <item name="android:textColor">#FFFF0000</item> </style>

在AndroidManifest.xml中引用:

<activity android:name="com.demo.StyleThemeDemo" android:theme="@style/newtheme"> <intent-filter> <action android:name="android.intent.action.MAIN"/> </intent-filter> </activity>

在代码中引用:

setTheme(R.style.newtheme);

将系统主题或自定义主题添加到Android Manifest中定义的<application>和<activity>元素中,但是主题不能应用在某一个单独的View里。

为了在程序中所有的Activity当中使用Theme,可以打开AndroidManifest.xml 文件,编辑<application>标签。

如果想实现一个Theme,但是想做一些轻微的改变,只需要将这个Theme添加为parent,我们可以按照我们的要求来修改这个Theme,可以修改在Theme.Dialog中定义的每个item元素的值,然后我们 在Android Manifest 文件中使用自定义的名字而不是Theme.Dialog。

如:

<style name="newtheme" parent="android:Theme.Dialog"> <item name="android:windowNoTitle">true</item> <item name="android:textSize">24sp</item> <item name="android:textColor">#FFFF0000</item> </mce:style><style name="newtheme" parent="android:Theme.Dialog" mce_bogus="1"> <item name="android:windowNoTitle">true</item> <item name="android:textSize">24sp</item> <item name="android:textColor">#FFFF0000</item></style>


android style theme相关推荐

  1. android style(样式)和theme(主题)设置

    android应用程序如何设置样式,包括样式定义.单个view设置样式. 全局样式设置.样式继承关系. 1.样式定义 android的样式定义在res/values/style.xml文件中,类似we ...

  2. Android style(样式) 和 theme(主题) 属性

    1. 定义 样式和主题资源都可用于对Android UI组件进行"美化",只要充分利用好这两个属性资源,我们可以开发出各种风格的应用界面.         style 样式: 一个 ...

  3. Android中Theme主题和Style样式使用介绍总结

    1.Theme主题 1.1.Theme主题作用范围 Theme主要是针对应用级别的或者说窗体级别,可以设置应用主题(应用换肤效果)和Activity的主题:主题是不能应用在某一个单独的View中:或者 ...

  4. Android系统自带样式(@android:style/)

    在AndroidManifest.xml文件的activity中配置   (API 18中Manifest文件中,<activity />要有android:theme="@an ...

  5. Android笔记 theme主题

    Android中theme与style的定义没有区别 区别在于控制范围 theme范围更大 style用于控制view对象 theme用于控制Activity样式 1在res/values下定义the ...

  6. Android Style和自定义属性

    文章目录 1. Android Style & Theme 1.1 基本概念 1.1.1 Style(样式) 1.1.2 Theme(主题) 1.2 创建和应用style 1.3 扩展和自定义 ...

  7. android设置theme红色主题,Android配置应用主题皮肤

    5+ API中提供plus.nativeUI.*提供系统原生类控件的调用,其样式由Android平台提供界面主题决定,新版本(5.9.0)App云端打包默认为"@android:style/ ...

  8. Android 中Theme主题使用

    Android 中Theme主题使用 android 中的主题颜色可以设置给Activity Dialog ,和someWeght. 合理使用主题能够减少一些代码达到更好的用户体验效果 (1)Andr ...

  9. android style边界显示兼容问题,android – IDE“无法解析@ style/Theme.Appcompat”时使用v7兼容性支持主题...

    这不是一个真正的问题,因为我的项目仍然构建和运行正确(使用gradle),但我有麻烦让Android Studio来识别在API 18 SDK中发布的应用程序兼容性主题(允许操作栏支持android ...

最新文章

  1. 机器学习-Sklearn
  2. C 语言编程 — 程序的装载与运行
  3. 计算机知识新闻稿,文科计算机大赛新闻稿
  4. okl4 linux,Native OKL4 Android Stack
  5. 2020-12-14(全局/静态对象的构造函数和析构函数调用的时机以及地址)
  6. 【知识星球】总有些骨骼轻奇,姿态妖娆的模型结构设计,不知道你知不知道,反正我知道一些...
  7. ubuntu怎么打中文_记录一下我在笔记本上安装ubuntu+win10系统的过程,仅供参考
  8. 如何用Seaborn描绘线图,分面网格关联图,密度图,连接图,热力图,线性回归图,分面网格绘图
  9. LVS负载均衡下session共享的实现方式-持久化连接
  10. Coherence X:将任意网站转为macOS应用
  11. 非线性优化_曲线拟合_g2o图优化_最小二乘优化示例
  12. BP神经网络算法及Matlab实现
  13. matlab线性规划的最优化,【OR】Matlab求解最优化问题(1) 线性规划
  14. centos安装net-speeder
  15. 刷入Magisk/SuperSU实现ROOT
  16. NLP 前置知识2 —— 深度学习算法
  17. Windows 10 uefi引导模式 GPT+UEFI Ghost系统备份还原步骤
  18. 微信网址防封防屏蔽,微信域名一直被封怎么解决
  19. Java 获取某年的第一天和最后一天
  20. ubuntu20.04没有声音如何处理

热门文章

  1. Sencha-命令-CMD(与Touch的结合运用)(官网文档翻译30)
  2. Shane 版详细设计书文档模板
  3. 寻找Cisco MARS的替代者
  4. WideString 和 string区别
  5. 一天变成36小时[转]
  6. 苹果证实将弃用Windows版QuickTime
  7. 虚拟机上安装Linux时出现的问题及解决方法
  8. 分支 getchar和putchar
  9. Android学习系列(16)--App列表之圆角ListView
  10. Visual Studio 2010 Ultimate敏捷之道:特性解析