android中的xml文件中的style样式

  次阅读 作者:智能小宝 来源:互联网 2016-01-19 12:32 我要评论(0)

style文件需要保存在res/values目录下,文件名任意,但是必须是xml文件,sytle文件的根标记必

须是。

Style是View中一些属性的集合,包括height,padding,font color,background等等,将设计和

内容分开,便于修改和重复使用。

例如:

声明style是CodeFont,对应的是style文件中的style name。mystyle.xml文件中定义了style

name是CodeFont:

fill_parent

wrap_content

#00FF00

monospace

/mce:style

1

<style name="CodeFont" parent="@android:style/TextAppearance.Medium"

mce_bogus="1">

fill_parent

wrap_content

#00FF00

monospace

parent属性表示style之间可以继承,同时可以覆盖parent style的一些属性。

style是针对view来说的,比如TextView,EditText这些,而theme必须针对整个activity或者整个

程序,你必须在AndroidManifest.xml中的或者中定义.

style继承有两种方式:

style的继承可以通过parent属性,用来继承android已经定义好的style,例如:

第一种:继承了android中定义好的属性,当然也可以同时覆盖了它的某些属性。

#00FF00

/mce:style

#00FF00

继承了android中的TextAppearance,同时覆盖了android:textColor属性。

第二种:继承自定义的style,不需要通过parent属性,只要继承的style的name开始后跟新的style

的name,中间用 . 隔开。注意:这种方式只适用与自定义的style继承。

#FF0000

/mce:style

#FF0000

新的style继承了CodeFont,在使用时这样写 style="@style/CodeFont.Red"

style可以多级继承:

30sp

/mce:style

30sp

sytle的更多属性见android包下的R.attr。需要注意,并不是所有的View都支持定义的style的属性

,如果自定义的sytle中包含View不支持的属性,程序会自动忽略它。

如果声明一个style作为Theme,需要配置mainfest文件中 或 的

android:theme 属性。将自定义的style作为application的theme:

在mainfest 的application中添加 android:theme属性:

其中CodeFont为style样式。

在每个标签中使用android:theme属性:

android:theme还可以配置android中已经存在的theme:

如果想调整android已经定义好的theme,则可以通过自定义style来实现,例如:

#b0b0ff

@color/custom_theme_color

@color/custom_theme_color

/mce:style

@color/custom_theme_color

@color/custom_theme_color

如果你要在java代码中加载主题的话,只要用setTheme(R.style.CustomTheme)就可以了,不过记

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...