androidUI美化及Android资源文件介绍

一、Style
就目前的互联网发展来看,已经有越来越多互联网企业都在Android平台上部署其客户端,并且为了提升用户体验,这些客户端都做得布局合理而且美观。Android的Style设计就是提升用户体验的关键之一。Android上的Style分为了两个方面:
1.Theme是针对窗体级别的,改变窗体样式;
2.Style是针对窗体元素级别的,改变指定控件或者Layout的样式。

1.Theme
eclipse里面主要有以下的theme:
@android:style/Theme.Holo.NoActionBar:无动作栏
@android:style/Theme.Holo.Light:灰色动作栏
@android:style/Theme.Holo.DarkActionBar:默认主题,为黑色

(1)在清单文件中设置整个app的主题样式
(2)在布局文件中设置当前页面的的主题样式

2.Style
定义一个简单的style
找到res/values/styles目录,打开该资源文件,在里面添加以下代码
<style name="textStyle">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#FF0000</item>
<item name="android:textSize">16sp</item>
<item name="android:padding">5dp</item>
</style>
如何调用呢?
在布局文件中调用:style="@style/textStyle"

style的继承
加上parent属性值
<style name="textStyle2" parent="textStyle">
<item name="android:background">#00ff00</item>
</style>

--------------------------------------------------------------------------------------------------------

二、selector
定义:selector就是状态列表(选择器)
I.Color-Selector
定义:颜色状态列表,可以跟color一样使用,颜色会随着组件的状态而改变。

文件存储于
/res/color/文件名.xml
注意:如果没有“color”目录的话,需要自己创建一个
步骤:
1.选中"res"右键-->new-->folder(新建文件夹color)
2.选中“color”右键-->new-->Android XML File-->
3.在刚刚创建的资源文件中添加代码
<item android:state_pressed="true" android:color="#ff0000"/>
<item android:color="#000000"/>

常用的item的状态值
android:state_pressed=["true" | "false"]//是否触摸
android:state_focused=["true" | "false"]//是否获得焦点
android:state_selected=["true" | "false"]//是否被状态
android:state_checkable=["true" | "false"]//是否可选
android:state_checked=["true" | "false"]//是否选中
android:state_enabled=["true" | "false"]//是否可用
android:state_window_focused=["true" | "false"] />//是否窗口聚焦
4.在xml布局文件中去调用该选择器
android:textColor="@color/text_color_selector"

II.Drawable-Selector
定义:是背景图状态列表,可以跟图片一样使用,背景会根据组件的状态变化而变化。
文件存储于
/res/drawable/文件名.xml
步骤:
1.同案例1一样的方式创建一个drawable文件夹,在里面新建一个button_bg_drawable.xml资源文件
2.在资源文件中定义不同状态的item显示的图片
常用的item状态值:
android:state_pressed=["true" | "false"]//是否触摸
android:state_focused=["true" | "false"]//是否获取到焦点
android:state_hovered=["true" | "false"]//光标是否经过
android:state_selected=["true" | "false"]//是否选中
android:state_checkable=["true" | "false"]//是否可勾选
android:state_checked=["true" | "false"]//是否勾选
android:state_enabled=["true" | "false"]//是否可用
android:state_activated=["true" | "false"]//是否激活
android:state_window_focused=["true" | "false"] />//所在窗口是否获的焦点
3.在xml布局文件中调用
android:background="@drawable/button_bg_drawable"
radio-->android:button

--------------------------------------------------------------------------------------------------------

三、shape
定义:shape用于设定形状,可以在selector,layout等里面使用,有6个子标签
Shape的类型(加到根元素的后面)
android:shape="ring" //圆环
注意:android:useLevel 只有当我们的shape使用在LevelListDrawable中的时候,这个值为true,否则为false。当shape为ring的时候必须设置这个属性为false

配合使用的属性
android:innerRadius 内环的半径
android:innerRadius 指圆环的内半径,和android:innerRadiusRatio同时存在时,以android:innerRadius为准;

android:thickness 环的厚度,也就是外环半径-内环半径
android:thickness 指圆环的厚度,即外半径减去内半径的大小,和android:thicknessRatio同时存在时,以android:thickness
如果android:thicknessRatio=”2”,那么环的厚度就等于环的宽度除以2
android:innerRadiusRatio; 默认值为3,内环半径的比例,例如这个值=2,那么内环的半径就是环的宽度1/2,通常这个值都会大于2,否则就显示不全环了

android:shape="rectangle" //四边形
android:shape="oval" //椭圆 如果设置width和height高度一样,那么就是圆形了
android:shape="line" //直线

6个子标签:
corners: 圆角
android:Radius="20dp" 设置四个角的半径
android:topLeftRadius="20dp" 设置左上角的半径
android:topRightRadius="20dp" 设置右上角的半径
android:bottomLeftRadius="20dp" 设置右下角的半径
android:bottomRightRadius="20dp" 设置左下角的半径
同时设置五个属性,则Radius属性无效
gradient: 渐变
android:angle="45"
android:startColor="@android:color/white"
android:endColor="@android:color/black"
当设置填充颜色后,无渐变效果。angle的值必须是45的倍数(包括0)
padding :间隔(四个方向)
size :大小
width,height通常shape都是作为background的,所以这个size通常不会有效,而是控件的宽高为准,当然,当作为imageview的src的时候,这个size默认还是会有用的
solid :填充
stroke : 描边
android:width="20dp" 设置边边的宽度
android:color="@android:color/black" 设置边边的颜色
android:dashWidth="2dp" 设置虚线的宽度
android:dashGap="20dp" 设置虚线的间隔宽度
dashWidth和dashGap属性,只要其中一个设置为0dp,则边框为实线边框


--------------------------------------------------------------------------------------------------------


四、资源文件
在Android工程中, 文件主要分为下面几类
(1)界面布局文件 : 在res/layout目录下定义, 用于定义Android中界面的显示样式;
(2)Java源码文件 : Android程序的逻辑实现, 程序主体;
(3)资源文件 : 各种XML文件, 可以定义图片等资源, 以及各种图片, 音频, 视频, 3d模型等资源;


res目录下资源

res/values目录XML文件<resource>子标签


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值