android Theme使用五

Unity中安卓平台的Theme设置 文章目录安卓Theme的简单说明Unity使用安卓Theme的设置Unity的Theme配置方式特别需要注意的点 最近项目申请整理谷歌商店的推荐位,谷歌审核人员提出Theme过时,要求对于App使用Theme.AppCompat或Theme.Material及其派生的主题,而对于这方面的说明,网上基本都是安卓原生的设置方式,用在unity上并不管用,折腾了我一天,终于理清楚了unity在安卓平台的theme设置方式,这里简单做一个记录。 安卓Theme的简单说明 我们都知道,安卓到现在已经出到了安卓10,在 阅读详情

style.xml和themes.xml

首先看看两者的区别:

1、Styles它包含多个属性,一般用于控件。setStyles();,面Themes一般用于Activity,setTheme();

2、theme是一组能够应用到一个app中所有界面的格式属性

3、style和themes属于资源。android提供了一组默认的实现让你去使用。你也可以定义自已的style和theme资源(一般开发人员都很少去自己定义Android的Styles和Themes而是继承parent系统的Styles和Themes再在基础之上进行修改。)

4、下面看看如何创建Style

a、在res/values下建立styles.xml文件。在styles.xml中增加根节点<resources>,根节点下可以放置多个<style>节点,<style>节点中可以放name和parent属性parent表示Style可以继承

b、style可以有多个<item>节点,item节点用于存放具体的属性值。最后在view中用style节点进行引用。

5、theme的创建和style一样。设置的时候在AndroidManifest.xml的application或activity节点中的android:theme属性中进行引用。

6、特殊符号@与?。@表示对当前应用的某资源的引用。而?表示对当前的属性进行引用。

7、当你喜欢某种默认样式,另外还需要作一些小调整时,你可以在style的parent属性在引用默认样式,然后在style节点下增加需要修改的item。

8、除了在laout及AndroidMenifest.xml中引用样式外,还可以以编程的方式用setTheme()方法设置theme。但一定要确保语句在setContentView和inflate之前。

我们一起来看如何让一个Activity像一个对话框主题:

这里用系统默认的Dialog主题,只需要在mainfest.xml文件里面配置

1.       <activity  

2.               android:theme="@style/styleTheme"  

3.               android:label="@string/app_name"  

4.               android:name=".HelloTietuActivity" >  

5.               <intent-filter >  

6.                   <action android:name="android.intent.action.MAIN" />  

7.                   <category android:name="android.intent.category.LAUNCHER" />  

8.               </intent-filter>  

9.           </activity>  

这样,当跳转到这个Activity的时候,就可怕看到效果了,当然styleTheme是继承了Theme.Dialog的。

 

2.1 style和theme的语法和使用

style和theme的语法是一样的。

<?xml version="1.0"encoding="utf-8"?>

<resources>

<style name="Sherlock.__Widget.ActionBar"parent="Widget">

                   <itemname="android:paddingTop">0dip</item>

                   <itemname="titleTextStyle">@style/TextAppearance.Title</item>

                   <itemname="background">@drawable/transparent_dark_holo</item>

                   <itemname="divider">?attr/dividerVertical</item>

                   <itemname="itemPadding">8dip</item>

</style>

</resources>

 

style 节点的name字段表示style的名字,parent表示当前style的父类,

item表示style里面的属性,name表示属性名字。

 

由上面的style片段,大家发现item的 name属性有以android:开头的,这些表示android系统自带的属性,没有以android:开头的表示当前项目的属性,这些属性在哪儿?其实就在attrs.xml中。android自带的属性在sdk/platforms/android-15/data/res/values/attrs.xml文件中。

这些属性所赋予的值大家看到了有像素值,@开头的资源ID,?开头的资源ID等等,这些值是哪边指定的呢?其实就是attrs.xml文件中<attr name = "background" format ="reference" />    format字段指定的。

 

在使用style和theme时候,查看sdk/platforms/android-15/data/res/values/attrs.xml文件中的值,基本就可以实现;对于自定义控件,要想设计它的style,需要实现sdk/platforms/android-15/data/res/values/attrs.xml文件中的属性和项目中attrs.xml中的属性。


大体就是这些。语言表述也是不是很清晰,写在这边只是为了防止忘记。如果可以帮助大家更好。


Android开发之Theme、Style探索及源码浅析 看注释吧,这货有接近400多个item属性,这也就是我们Android关于Theme的开山鼻祖了,在我们自定义时其实来这看比去API查还方便呢(其实需要两个互相配合,一个查,一个看解释,哈哈),因为它里面定义了关于我们整个应用中文字样式、按钮样式、列表样式、窗体样式、对话框样式等,这些样式都是默认样式,它还有很多我们常用的扩展样式,譬如Theme.Light、Theme.NoTitleBar、Theme.NoTitleBar.Fullscreen等等,反正你要有需求来这里搞就行。看见name字段了吗? 阅读详情

相关推荐

Android:Theme总结--小白总结

API版本不高,所以没有列出全部!但是大部分常见的都有: 1.android:theme=“@android:style/Theme” //背景黑色-->1.png 2.android:theme="@android:style/Theme.Black" //背景黑色-->2.png 3.android:theme="@android:style/Theme.Black.NoTitleB

qq_27263999的博客 2385

Android 入门

android与web开发很像,xml相当于html,java相当于js脚本。 控件属性 阴影 shadowColor:设置阴影颜色 shadowRadius:模糊度 以上两者必须同时使用 shadowDx:阴影水平偏移量 shadowDy:阴影竖直偏移量 singleLine true为单行显示文本,如超出界限会显示…android:singleLine="true" 事件处理 按钮事件 //点击事件 btn.setOnClickListener(new View.OnC

weixin_46823133的博客 812

android namespace 、样式、主题 (二)

NULL 博文链接:https://venus585625.iteye.com/blog/860119

Android 开发之 themes.xml 文件

折腾了一整天在发现标题栏的颜色不能改写,全网的方案都不影响他,直到发现连activity里面的button的颜色都不能自己设置,换了一个selector后发现除了颜色之外,样式可以改动,于是最后才找出来是因为themes.xml这个文件属于系统主题色,然后里面的配置一旦被应用到 application 或者 activity 中之后,就是会最高优先级强行影响所有的元素,因此解决方案目前只能是自己写一个 style.xml 然后把他应用到 manifest 里面。

weixin_44215545的博客 919

RISC-V嵌入式开发实战:手把手教你读懂并修改CH32V103的链接脚本(.ld)

本文深入解析RISC-V嵌入式开发中CH32V103链接脚本(.ld)的编写与优化技巧。从内存布局、段分配到实战调试,详细讲解如何解决程序跑飞、变量异常等典型问题,特别针对RISC-V架构的gp寄存器优化、中断向量表处理等特性提供专业指导,帮助开发者充分利用64KB Flash和20KB RAM资源。

weixin_33704234的博客 175

RU.EXE实用指南:从基础操作到高级调试技巧

本文是RU.EXE(RW Everything)的实用指南,详细介绍了这款硬件调试工具从基础操作到高级技巧的全过程。文章阐述了RU.EXE作为直接读写硬件寄存器、内存和PCI配置空间的强大工具,如何帮助硬件工程师和开发人员高效进行底层系统调试与故障排查,并强调了安全操作的重要性。

weixin_29228203的博客 278

android 主题xml,自定义Android主题风格theme.xml方法 Android开发技术

自定义Android主题风格theme.xml方法 Android开发技术2013 年 5 月 23 日在Android中可以通过自定义主题风格方式来实现个性化以及复用,首先我们创建theme.xml主题文件,保存位置为工程的res/values/theme.xml ,这里我们可以可以为主题起一个名称,比如CWJ,这里去除了xml的文件头这行,我们在工程中只需在androidmanifest.xm...

weixin_34072003的博客 1674

VFIO框架源码分析(一)- 从初始化到设备访问

本文深入剖析了Linux内核中的VFIO(Virtual Function I/O)框架,详细解读了其从初始化到设备访问的全过程。VFIO通过Container->Group->Device的层次化设计,利用IOMMU提供安全隔离,允许用户空间直接访问物理设备。文章基于Linux v5.15版本,重点分析了vfio_init模块入口、Container创建与配置、Group关联以及最终设备访问等关键环节,揭示了VFIO如何通过逐层授权机制构建安全可靠的设备直通模型,为虚拟化技术提供核心支持。

qq_36071928的博客 380

android 设置主题,app不需要标题栏,可以在themes主题中修改,就是values下的themes.xml

android 设置主题,app不需要标题栏,可以在themes主题中修改,就是values下的themes.xml

qq_36570506的博客 1155

别再只用跳层连接了!手把手教你用DASI和MDCR模块提升红外小目标检测精度

本文详细介绍了如何利用DASI和MDCR模块提升红外小目标检测精度。通过分析传统跳层连接的缺陷,提出维度感知的特征选择性融合(DASI)和多尺度感受野精炼器(MDCR)的创新方案,显著提升小目标检测性能。实验证明,该方法在多个场景下AP@0.5提升达15.4%,特别适用于安防监控和遥感图像分析。

weixin_28715081的博客 224

中国知网文献引用导入EndNote9.X,Web of science导入endnote以及谷歌学术导入endnote图文详解,全网最细版本适用EndNote9.x,Endnote20版本

在科研中用到EndNote管理文献,遇到插入文献时,中国知网如何将参考文献导进Endnote9.x或者web of sicence,谷歌学术如何将文章,文献导入进文献管理软件EndNote的详细图文2022版本解释,全网最细的笔记教程,值得大家参考收藏学习

sakura的博客 5175

<Android学习笔记五>Android系统自带样式(android:theme)详解

Android系统自带样式(android:theme)详解

小冯的Blog 823

部署与可视化系统:移动端跟踪系统:YOLOv8 + ByteTrack 结合 Android CameraX 实现实时行人计数 App

本文详细介绍了在Android移动端实现实时行人检测、跟踪与计数系统的完整方案。系统采用YOLOv8+ByteTrack技术栈,基于NCNN推理引擎,无需云端算力即可在手机端侧完成全流程处理。文章从技术选型、系统架构、CameraX集成等多个维度进行深入解析,重点阐述了移动端部署面临的工程挑战和优化策略。通过四层管道模型设计,实现了从图像采集到目标跟踪的高效处理流程,并采用C++ NDK开发确保性能。该系统在中端手机上可达到10FPS,旗舰机型可达30FPS,为移动端实时目标跟踪提供了可落地的解决方案。

ZXSXJ的博客 91

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

一,Theme主题 1.1,Theme主题作用范围 Theme主要是针对应用级别的或者说窗体级别,可以设置应用主题(应用换肤效果)或者Activity的主题;主题是不能应用在某一个单独的View中; 1.2,Theme主题的定义 在AS中res/values/style.xml中定义,例如新建项目AS自动创建的Theme,是系统提供; <!-- Base application ...

ezconn的博客 2万+

GD32F4xx MCU ADC+DMA 多通道采样

1、GD32F4xx ADC GD32F4xx 的12位ADC是一种采用逐次逼近方式的模拟数字转换器。 1.1 主要特征 可配置12位、10位、8位、6位分辨率; ADC采样率:12位分辨率为2.6MSPs,10位分辨率为3.0 MSPs。分辨率越低,转换越快; PS: MSPs (模拟混合信号转换速率),是指完成1次从模拟转换到数字的AD转换所需的时间的倒数。常用单位是ksps和Msps,表示每秒采样(千)/(百万)次(kilo / Million Samples per Second)。 1msps

madao1234的博客 8117

uniapp 全局弹窗

功能详解1.有的组件需要全局调用,不想要在一个页面里面一个个引入,现在就需要写入到全局中,直接全局触发。2.通过 $rechargePop就能全局触发 充值的弹窗实现步骤一、先把组件封装好,如 rechargePop组件位置 components/RechargePop/index.vue ,就定义一个methods open方法就可以 二、在同级别路径下定义一个 index.js 三、引入到main.js 四、全局调用this.$rechargePop(); 就能弹出那个弹窗

weixin_42066070的博客 657

Android 中Theme主题使用

Android 中Theme主题使用 android 中的主题颜色可以设置给Activity Dialog ,和someWeght. 合理使用主题能够减少一些代码达到更好的用户体验效果 (1)Android 系统中定义的主题。 android:theme="@android:style/Theme.Dialog" : Activity显示为对话框模式 android:theme="@android:style/Theme.NoTitleBar" : 不显示应用程序标题栏 android:theme="@an

康闯 2438

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Android中Style和Theme的使用

本文转自:程序开发技术交流分享Style:Style是View中一些属性的集合,包括height,padding,font color,background等等,Style单独定义在xml文件中,类似与web页面中css的角色,将设计和内容分开,便于修改和重复使用。 定义Style:style文件需要保存在res/values目录下,文件名任意,但是必须是xml文件,sytle文件的根标记必须是。写了一个简单示例,效果如下:程序目录结构如下图,其中mystyle.xml是自定义的style文件。main.x

降龍 3万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Android:Theme的使用-全屏设置

https://www.cnblogs.com/zhouyou96/p/5323138.html https://www.jianshu.com/p/c797f90c4168 https://blog.csdn.net/howard2005/article/details/79460799 2018-01-01 15:37:45.994 19821-19821/? E/AndroidRuntime...

Hogwarts 4304

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Android Theme 主题总结

简介:主题决定了App的展示效果,我们可以为整个Application指定主题,也可以为Activity单独指定主题,甚至可以为各个控件如Button、TextView指定主题。本文对Android Theme的引用方式,版本分类进行列举,并对兼容包主题进行了归类、总结。期望达到对Theme有一个总体的清晰的认识。

一剑围城的专栏 1万+

Android Theme的使用

原文地址 http://www.cnblogs.com/Dentist/p/4369816.html Theme是一套UI控件和Activity的样式。可以给Application 和 activity 设置主题。来设置显示界面的样式。 <manifest xmlns:android="http://schemas.android.com/apk/res/android" ...

b503254407806935的博客 268

android theme有哪些,【QMUI教程】 Android Theme的使用

QMUI Android 对外发布了一两天了,收到了一些意见和建议,感觉比较突出的一个问题就是 Theme 的问题,今天就来聊聊这个话题。起步日常开发过程中,我们很少有机会去触碰到 theme,也很少有文章提及到 theme, 更没有依赖 theme 去开发 UI 组件的,QMUI 应该是除了 Android 官方组件外唯一的一个会依赖 theme 的开源库吧,至少目前我没发现有其它库是这么做的。...

weixin_34928063的博客 406

android:theme 多个,Android Theme 主题总结

简介:主题决定了App的展示效果,我们可以为整个Application指定主题,也可以为Activity单独指定主题,甚至可以为各个控件如Button、TextView指定主题。本文对Android Theme的引用方式,版本分类进行列举,并对兼容包主题进行了归类、总结。期望达到对Theme有一个总体的清晰的认识。一、Theme的来源分类系统的主题第三方库的主题兼容包如support_v7.jar...

weixin_30014265的博客 1112

安卓theme与style详解

安卓app作为一个有界面的程序,谷歌给我们提供了很多UI控件。而控件是功能性的,具体的控件样式却是需要我们自己去控制的。这也就引出了今天话题,安卓的theme与style。说到这个,大家可能都知道theme是主题,也就是整个app的样式。而style是样式,控制的是单个View。是的,希望我们在应用的时候也要铭记这点。 也就是说theme是针对application和activity的,当...

Android程序员的博客 5086
上一篇: android Theme使用四
下一篇: GVim常用配置
dalancon
博客等级 码龄15年 189粉丝 67原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值