就目前的互联网发展来看,已经有越来越多互联网企业都在Android平台上部署其客户端,并且为了提升用户体验,这些客户端都做得布局合理而且美观。本文所要介绍的Android的Style设计就是提升用户体验的关键之一。Android上的Style分为了两个方面:

1.Theme是针对窗体级别的,改变窗体样式;

2.Style是针对窗体元素级别的,改变指定控件或者Layout的样式。

Android系统的themes.xml和style.xml(位于/base/core/res/res/values/)包含了很多系统定义好的style,建议在里面挑个合适的,然后再继承修改。以下的这段代码属性是在Themes中比较常见的,源自Android系统本身的themes.xml:

@android:drawable/screen_background_dark

@null

false

false

false

@android:drawable/title_bar_shadow

@android:style/WindowTitle

25dip

@android:style/WindowTitleBackground

@android:style/Animation.Activity

至于控件的Style设计就范围大多了,看看Eclipse的Android控件属性编辑器[Properties]就大概知道有哪些条目,而Android内置的style.xml也只是定义每个控件的默认样式而已。不过控件的style不建议大改,耐看的style更能让用户长时间使用软件。另外,控件的Style在很多情况下都用到9.png,学习9.png就必须到/base/core/res/res/drawable-hdpi里面看看,里面有很多系统内置的9.png。

注意:为了研究Android的Style和Theme,强烈建议下载Android的base.git!

先来看看本文程序的效果,如下图所示:

本文程序的themes.xml代码如下,自定义了WindowTitle,:

true

60dip

@style/WindowTitle

true

#BB000000

2.75

要为Activity使用theme,要么使用代码 setTheme(R.style.Theme),要么在Application Manifest里面设置如下:

本文程序的styles.xml代码如下,background默认使用的是9.png,xml定义在/base/core/res/res/drawable/之下:

18sp

#008

@android:color/black

2.0

@android:color/black

1.0

@android:drawable/btn_default

?android:attr/textAppearanceMedium

@android:drawable/edit_text

?android:attr/textAppearanceMedium

main.xml代码如下:

android:orientation="vertical" android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:layout_height="wrap_content" android:text="@string/hello"

style="@style/TextView" />

style="@style/EditText" android:layout_width="fill_parent"

android:text="类似Button的EditText">

android:layout_width="fill_parent" android:text="普通的EditText">

style="@style/Button" android:layout_width="fill_parent" android:text="类似EditText的Button">

android theme 使用方法,Android入门之Style与Theme用法实例解析相关推荐

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

    自定义Android主题风格theme.xml方法 Android开发技术 2013 年 5 月 23 日 在Android中可以通过自定义主题风格方式来实现个性化以及复用,首先我们创建theme.x ...

  2. android跳转方法,Android入门篇(五)Activity跳转

    上一篇写了Activity的生命周期,这方面的知识在我们日常开发的时候经常会用到.同样的这篇也写一些基础的知识. Activity间跳转 Button监听事件初探 Activity跳转配合Intent ...

  3. Android 应用界面风格与主题(style and theme)

    主题Theme就是用来设置界面UI风格,可以设置整个应用或者某个活动Activity的界面风格.在Android SDK中内置了下面的Theme,可以按标题栏Title Bar和状态栏Status B ...

  4. Android入门第十六篇之Style与Theme

    本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多互联网企业都在Android平台上部署其客户端,为了提升用户体验,这些客户端都做得布局合理而且美观.. ...

  5. Android代码混淆方法,Android 代码混淆零基础入门

    内容提要 本篇文章主要有三个部分,让读者读完后能自己写规则混淆项目 对Android代码怎么开启混淆做一个简单的介绍. 对混淆规则做一个简单介绍: 在混淆过后Crash日志反推代码工具retrace. ...

  6. android view使用方法,Android View构造方法第三参数使用方法详解

    我们都知道,在Android中要使用一个View,一般会有两种方式: 在XML文件中配置: 直接在代码中new一个View的对象. 我们今天讨论的内容就是围绕着View的构造方法的. 1.实例 首先我 ...

  7. Android的main方法,Android程序没有main函数,那Android程序的执行入口在哪儿?

    首先,我们可以了解,Android程序可以由一个或者多个Activity组成,每个Activity之间并没有很紧密的联系. 我们可以在自己的程序中调用其他的Activity,特别是自己的代码之外生成的 ...

  8. android datepicker使用方法,android DatePicker

    Date Picker 提供了一个构件去选择一个时间,使用DatePicker构件,该构件允许用户去选择月,日,年在一个界面中. 实例介绍 首先我们应该先创建一个DatePickerDialog,该D ...

  9. android返回键方法,Android按返回键(后退键)Back键事件捕获的两种方法

    package zhangphil.back; import android.support.v7.app.ActionBarActivity; import android.util.Log; im ...

最新文章

  1. Leetcode 211. 添加与搜索单词 - 数据结构设计 解题思路及C++实现
  2. hdu-3944 DP?
  3. 图解ARP协议分析实例
  4. linux:uabntu日常操作
  5. 科技论文中的分析与综合-如何写好科技论文之我见(七)
  6. Nacos(十二)之Java SDK
  7. 三维视觉前沿进展年度报告
  8. mysql 查询语句_MySQL查询语句之复杂查询
  9. php里面什么是u函数,ThinkPHP内置函数----U方法
  10. c语言判断二叉树是不是二叉排序树_判断
  11. 基于MATLAB的指纹识别算法仿真实现
  12. 超级简单的方法重装win10系统
  13. 2021最新分享阿里P6面经及心得
  14. Texture tiling
  15. es 切换别名_Elasticsearch之别名
  16. GitHub 创建工程及clone 和 push
  17. 芯片低功耗设计的两种常用EDA流程
  18. 南昌大学计算机专业分数线2019,南昌大学录取分数线2019(在各省市录取数据)...
  19. 三种循环实习九九乘法表、实现其他例子
  20. nyoj_74 小学生算术

热门文章

  1. C#中如何复制窗体到另一个项目
  2. IOS开发基础之团购案例17-xib和UITableView两种方式实现
  3. 计算机组成原理,P函数,深入浅出计算机组成原理学习笔记:第五讲
  4. js byte数组_这么骚的 js 代码,不怕被揍么
  5. 大锅菜机器人_炒菜机器人——烹饪界的一场革命
  6. java 相对路径 文件读取,Java相对路径读取文件
  7. osgCallback的实现方法及原理
  8. ubuntu16下vue-cli安装
  9. Java URL协议扩展实现
  10. 完全优化MySQL数据库性能的八大巧方法