android的空间样式主要包括控件各种状态下背景图片或颜色,控件中字体颜色。

这里解释一下个状态是什么意思,android中控件有如下几个状态
普通
state_enabled 是否有效
state_focused 是否聚焦
state_pressed 是否被按下
其中state_focused 和 state_pressed 可自由有如下4种组合

android:state_focused="true" android:state_pressed="true"
android:state_focused="true" android:state_pressed="false"
android:state_focused="false" android:state_pressed="true"
android:state_focused="false" android:state_pressed="false"

可以看出android控件有着很多不同状态,在不同的状态下有着不同的样式,比如不同的背景,请注意android控件的背景绝大部份是使用图片表示。

另外
android中控件在屏幕中有两种模式,分别是:

1 普通模式
2 触摸模式 touchmode


根据经验在控件开始显示时,
处于普通模式下,当使用轨迹球或者方向键都不会切换模式,但是当你使用手指触摸屏幕时,控件会自动切换到触控模式,离开屏幕后后再使用轨迹球或者方向键便有切换到普通模式,请注意在切换的过程中有时候会碰到问题,比如说离开屏幕后滚动轨迹球无效,或者重新使用屏幕时点击无反应,这个应该是android一个不足的地方,编程时应当注意。

在这两个模式下,前面说的状态有不同表现,在普通模式下,一般在按下之前必须先选中,而在touchmode下,并不需要,在响应用户操作时有不同的表现。

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false"
android:drawable="@drawable/没有焦点时的图片背景" />
<item android:state_focused="true" android:state_pressed="true"
android:drawable=
"@drawable/非触摸模式下获得焦点并单击时的背景图片" />
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/触摸模式下单击时的背景图片" />
<item android:state_selected="true"
android:drawable="@drawable/选中时的图片背景" />
<item android:state_focused="true"
android:drawable="@drawable/获得焦点时的图片背景" />
</selector>

那什么是控件的样式呢,这个包括很多,控件大小,背景,前景,是否能选中,点击等。
比如说listview中默认是黑色,选中时为亮黄色,很多朋友肯定想换掉它,那有没有方法呢。
答案是肯定的,但是需要自己定义新的样式也就是style,然后在使用控件时使用自定义的style。

经过我们的测试,大部分控件的样式都可以自定义,但是有少部分尚不可行,比如说tabActivity的标签头选中时候的背景,menu的背景似乎都不能改变,因为它们的背景图片都被硬编码进系统了,无法通过接口设置,但是menu有个办法绕过,那就是根本不使用系统menu,我们拦截住menu按键事件,在监听器中实现自己的menu,那么就可以随心所欲了。

更多相关文章

  1. Android(安卓)如何使用GPU硬件加速
  2. ListView的分割线相关属性
  3. Android开发之--脚本编程
  4. 疯狂Android讲义(第2版)
  5. Android面试及开发忠告
  6. Android开发教程
  7. android网络编程――使用Android中的网络连接
  8. Android多分辨率适配实践【1】使用字体图标(内含两枚神器)
  9. 【Android(安卓)FFMPEG 开发】Android(安卓)中使用 FFMPEG 将 PC

随机推荐

  1. Github Actions Android(安卓)CI打包配置
  2. android 学习记录
  3. Python基础——列表、元组、字典
  4. Android创建快捷方式(shortcut)
  5. Android(安卓)source code[ 源代码]下载,
  6. Android(安卓)Studio 多渠道打包遇到的问
  7. android如何取消闹铃
  8. Android(安卓)颜色代码
  9. Android(安卓)读取Assets中图片
  10. 【Android(安卓)Studio】setSupportActio