`
java-admin
  • 浏览: 1381946 次
  • 性别: Icon_minigender_1
  • 来自: 陕西.西安
社区版块
存档分类
最新评论

Android Styles & Themes(上)——Style

阅读更多

很早前就看到Android SDK中关于Applying Styles and Themes的介绍与说明,今天总算有时间来体验下了。和web中的CSS一样,Android也可以为界面定义全局、公用的Style。Styles和 Themes都是资源,存放在res/values文件夹下。

首先,什么是Style,什么是Theme?

  • Style:是一个包含一种或者多种格式化属性的集合,我们可以将其用为一个单位用在布局XML单个元素当中。比如,我们可以定义一种风格来定义文本的字号大小和颜色,然后将其用在View元素的一个特定的实例。
  • Theme:是一个包含一种或者多种格式化属性的集合,我们可以将其为一个单位用在应用中所有的Activity当中或者应用中的某个 Activity当 中。比如,我们可以定义一个Theme,它为window frame和panel 的前景和背景定义了一组颜色,并为菜单定义可文字的大小和颜色属性,可以将这个Theme应用在你程序当中所有的Activity里。

其次,定义Styles和Themes资源的XML文档的结构

对每一个Styles和Themes,给<style>元素增加一个全局唯一的名字,也可以选择增加一个父类属性。在后边我们可以用这 个名字来应用风格,而父类属性标识了当前风格是继承于哪个风格。在<style>元素内部,申明一个或者多个<item>,每一 个<item>定义了一个名字属性,并且在元素内部定义了这个风格的值。

然后,看个自定义的Styles的实例

  1. 在res/values 目录下新建一个名叫style.xml的文件。
  2. 在style.xml定义内容如下:
    <?xml version=”1.0″ encoding=”utf-8″?>
    <resources>
    <style name=”DavidStyleText1″>
    <item name=”android:textSize”>18sp</item>
    <item name=”android:textColor”>#EC9237</item>
    </style>
    <style name=”DavidStyleText2″>
    <item name=”android:textSize”>14sp</item>
    <item name=”android:textColor”>#FF7F7C</item>
    <item name=”android:fromAlpha”>0.0</item>
    <item name=”android:toAlpha”>0.0</item>
    </style>
    </resources>

上面样式的定义,从字面意思就可以了解其功能了,下面看看如何应用它吧:

<!– 应用样式1的TextView –>
<TextView
style=”@style/DavidStyleText1″
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
android:gravity=”center_vertical|center_horizontal”
android:text=”moandroid”/>

<!– 应用样式2的TextView –>
<TextView
style=”@style/DavidStyleText2″
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
android:gravity=”center_vertical|center_horizontal”
android:text=”www.moandroid.com”
android:autoLink=”all”/>

现在这个EditText组件的所表现出来的风格就为我们在上边的XML文件中所定义的那样,如下:

Style

看了新的界面是不是感觉漂亮多了,这也就是Styles的魅力吧。需要补充说明的是:单击超链接,还可以打开网页如下:

moandroid

这是如何实现的了?TextView.setTextView不支持HTML TAG的输出,所以即便写成这样:
mTextView01.setText(”<a href=\”http://www.moandroid.com/\”>mo-android|享受Android带给我们的新体验< /a>”);实际输出时,也就是纯文本而已,并不会作HTML TAG的转换。但若撇开HTML TAG之外(如“<”开头的标记),在TextView里加上了android:autoLink=”all”,那么正文中若有网址 (http://),是可以被显示的。

分享到:
评论

相关推荐

    安卓Android源码——style.rar

    在安卓(Android)系统中,Style(样式)是一种强大的工具,用于统一应用程序的外观和感觉。它是XML资源文件的一部分,通常存储在`res/values`目录下的`styles.xml`文件中。通过定义样式,开发者可以避免在多个布局...

    jquery ui & themes

    在给定的文件`jquery-ui-themes-1.9.2.zip`中,包含了多个预设的主题,每个主题通常由一组CSS文件组成,例如`.css`和`.png`图像文件,它们定义了各个部件的颜色、背景、边框和图标等样式。开发者可以选择一个主题并...

    Android Theme和Styles内部定义解析.txt

    ### Android Theme和Styles内部定义解析 #### 一、概述 在Android开发中,为了实现界面的一致性和美观性,开发者通常会使用`Theme`和`Styles`来管理UI元素的样式和外观。本文将深入探讨Android中`Theme`和`Styles`...

    安卓Android源码——theme.rar

    在styles中,我们可以看到一系列的&lt;style&gt;元素,每个style都有一系列属性,比如`android:textColor`,`android:background`等,这些属性定义了UI组件的外观。 在`themes.xml`中,一个主题(Theme)是由一个或多个...

    Android源码——UI界面源码.zip

    本资源“Android源码——UI界面源码.zip”包含了一些关于Android UI界面的源代码,帮助开发者深入理解Android UI的设计原理和实现机制。下面我们将详细探讨Android UI界面的相关知识点。 首先,Android UI主要基于...

    安卓Android源码——MyButton2.rar

    再者,Android的样式和主题(Styles and Themes)也可能在MyButton2中有所应用。开发者可以通过定义自定义的主题,在XML资源文件中设置按钮的样式,然后在布局文件中引用,这样可以统一整个应用的视觉风格,同时方便...

    Android_样式(style)&主题(theme)&显示单位

    在Android开发中,样式(style)和主题(theme)是两个关键的概念,它们用来统一和管理应用程序的视觉表现。样式可以看作是一组预定义的属性集合,用于控制UI组件的外观,比如字体颜色、大小、背景等。而主题则是...

    Apex Legends New Tab & Themes-crx插件

    单击垃圾箱图标即是,或-右键单击工具栏上的心形按钮,然后单击“从Chrome删除”免责声明:Apex Legends New Tab&Themes是粉丝为粉丝和版权属于材料的各自所有者。 这是非官方的,如果有任何问题,请提醒我们,我们...

    Android源码——超级清爽android计算器界面源码.zip

    Android的`styles.xml`和`themes.xml`文件可以用来定义和应用这些样式。 总的来说,通过研究这个"超级清爽android计算器界面源码",开发者可以深入理解Android应用的各个层面,包括UI设计、事件处理、计算逻辑的...

    Android开发指南中文版-----应用程序框架

    ### Android开发指南中文版——应用程序框架 #### 一、应用程序基础(Application Fundamentals) 在Android开发中,应用程序的基础架构包括以下几个核心部分: ##### 关键类 Android应用的核心是几个关键类: 1. *...

    Android应用源码之style-IT计算机-毕业设计.zip

    在Android中,styles通常定义在res/values/styles.xml文件中,其中包含了不同主题(theme)和样式(style)的定义。 这个项目可能包含以下关键知识点: 1. **Styles与Themes**:Styles是对单个视图(View)或一组视图的...

    安卓Android源码——换肤.zip

    在安卓(Android)平台上,为应用实现换肤功能是一项常见的需求,这能够提供更好的用户体验,让用户根据个人喜好自定义应用的外观。这个“安卓Android源码——换肤.zip”文件很可能是提供了一套完整的源代码示例,...

    安卓Android源码——日记本.zip

    在安卓(Android)平台上开发应用时,理解源码是提升开发技能和优化应用程序的关键步骤。"安卓Android源码——日记本.zip" 提供了一个关于日记本应用的源代码实例,这将帮助我们深入理解Android应用的基本架构和工作...

    Android源码——仿Win8的metro的UI界面源码.zip

    7. **主题和样式**:通过自定义主题和样式文件(如styles.xml和themes.xml),可以统一应用的视觉样式,使其符合Win8 Metro的外观。 8. **碎片(Fragment)**:如果应用支持多屏设备,可能用到了Fragment来管理屏幕...

    安卓Android源码——仿安卓美团界面.zip

    在本压缩包“安卓Android源码——仿安卓美团界面.zip”中,我们主要探讨的是如何在Android平台上开发一个类似于美团应用的用户界面。这个源码示例为开发者提供了一个实践平台,来学习和理解Android UI设计以及相关...

    Android源码——高仿点心桌面皮肤源码.7z

    1. **主题和样式(Themes and Styles)**:Android允许通过定义主题和样式来改变应用的整体外观。在res/values/styles.xml文件中,可以定义不同级别的主题,如全局主题和特定组件主题,然后在AndroidManifest.xml中...

    安卓Android源码——高仿墨迹开关设置.zip

    这可能涉及到res/values/styles.xml或res/values/themes.xml文件的修改。 7. **响应式设计**:为了适应不同屏幕尺寸和分辨率,高仿墨迹开关的源码可能考虑了响应式布局,确保在各种设备上都能正确显示和交互。 8. ...

Global site tag (gtag.js) - Google Analytics