### Android2.2 API中文文档——View #### 概述 在Android开发中,`View`是最基本的UI组件,所有可见的用户界面元素都是通过继承`View`类实现的。`View`类定义了控件的行为和外观,并且提供了绘制、布局、处理触摸事件等功能。本文档将详细介绍Android2.2版本中的`View`类及其相关属性,帮助开发者更好地理解和使用这些重要的UI组件。 #### 已知直接子类 `View`类有许多直接子类,包括但不限于: - **AnalogClock**:模拟时钟视图。 - **ImageView**:用于显示图片的视图。 - **KeyboardView**:键盘视图。 - **ProgressBar**:进度条视图。 - **SurfaceView**:用于显示视频或自定义动画的视图。 - **TextView**:文本视图,用于显示文本信息。 - **ViewGroup**:视图容器,可以包含其他`View`对象。 - **ViewStub**:视图存根,可以在运行时膨胀成实际的视图。 #### 已知间接子类 除了直接子类外,还有许多间接子类,这些子类通常继承自直接子类,例如: - **AbsListView**:抽象列表视图,是`ListView`和`GridView`的基类。 - **AbsSeekBar**:抽象滑动条视图,是`SeekBar`的基类。 - **AbsSpinner**:抽象选择器视图,是`Spinner`的基类。 - **AutoCompleteTextView**:自动完成文本视图,用于提供自动补全建议。 - **CheckBox**:复选框视图。 - **Chronometer**:计时器视图。 - **DatePicker**:日期选择器视图。 - **DialerFilter**:拨号过滤器视图。 - **DigitalClock**:数字时钟视图。 - **EditText**:编辑文本视图,允许用户输入文本。 - **ExpandableListView**:可扩展列表视图,可以展示层次结构的数据。 - **Gallery**:画廊视图,用于展示一系列水平排列的项目。 - **GridView**:网格视图,用于展示多列的项目。 - **ImageButton**:图像按钮视图。 - **ImageSwitcher**:图像切换视图,用于快速切换显示不同的图像。 - **LinearLayout**:线性布局视图,按顺序水平或垂直排列其子视图。 - **ListView**:列表视图,用于展示一系列项。 - **RadioButton**:单选按钮视图。 - **RadioGroup**:单选按钮组视图,包含一组互斥的`RadioButton`。 - **RatingBar**:评分条视图,用于展示星级评价。 - **ScrollView**:滚动视图,可以滚动其包含的单一子视图。 - **SeekBar**:滑动条视图,用于选择一个值范围内的值。 - **Spinner**:下拉选择器视图,可以选择列表中的一个项。 - **TabHost**:选项卡宿主视图,用于管理多个选项卡页面。 - **TabWidget**:选项卡小部件视图,显示选项卡的标签。 - **TableLayout**:表格布局视图,用于创建表格样式布局。 - **TableRow**:表格行视图,是`TableLayout`的直接子视图。 - **TextSwitcher**:文本切换视图,用于快速切换显示不同的文本。 - **TimePicker**:时间选择器视图。 - **ToggleButton**:切换按钮视图,可以在两个状态之间切换。 - **TwoLineListItem**:双行列表项视图,用于显示两行文本。 - **VideoView**:视频视图,用于播放视频。 - **ViewAnimator**:视图动画器视图,用于展示动画效果。 - **ViewFlipper**:视图翻转器视图,可以翻转显示不同的视图。 - **ViewSwitcher**:视图切换器视图,用于快速切换显示不同的视图。 - **WebView**:网页视图,用于加载和显示网页。 - **ZoomButton**:缩放按钮视图。 - **ZoomControls**:缩放控制器视图,用于控制缩放操作。 #### XML属性 下面是一些常用的`View`类的XML属性及其描述: - **android:background**:设置背景色或背景图片。可以通过以下方式设置背景为透明:“@android:color/transparent”或“@null”。注意`TextView`默认是透明的,不需要写此属性,但是对于`Button`、`ImageButton`或`ImageView`想要设置为透明则必须显式指定该属性。 - **android:clickable**:设置是否响应点击事件。如果设为`true`,则视图会响应点击事件;若设为`false`,则不会响应点击事件。 - **android:contentDescription**:设置视图的描述文本,主要用于辅助功能,为没有文字描述的视图提供描述信息,如`ImageButton`。这些描述不会在界面上显示,但可以被辅助技术读取。 - **android:drawingCacheQuality**:设置绘图时半透明质量。可设置的值包括:`auto`(默认,由框架决定)、`high`(高质量,使用较高的颜色深度,消耗更多的内存)、`low`(低质量,使用较低的颜色深度,占用较少的内存)。 - **android:duplicateParentState**:如果设置了此属性,该视图将直接从父容器获取绘图状态(如高亮、按下等)。需要注意的是,这仅获取绘图状态,并不会获取事件。 - **android:fadingEdge**:设置滚动条拉出时边框渐变的方向。可选值包括:`none`(边框颜色不变)、`horizontal`(水平方向颜色变淡)、`vertical`(垂直方向颜色变淡)。 - **android:fadingEdgeLength**:设置边框渐变的长度。 - **android:fitsSystemWindows**:设置布局调整时是否考虑系统窗口(如状态栏)的影响。 - **android:focusable**:设置是否可以获得焦点。如果有`requestFocus()`方法被调用,则优先处理具有焦点的视图。在表单中,如果想要设置某个视图(如`EditText`)获取焦点,不仅需要设置`focusable`为`true`,还需要确保前面的所有视图都将`focusable`设置为`false`。此外,在触摸模式下获取焦点还需要设置`focusableInTouchMode`为`true`。 以上是Android2.2 API中文文档中关于`View`类的部分介绍和相关属性的说明,希望能帮助开发者更好地理解并运用这些基本的UI组件。
剩余6页未读,继续阅读
- 免积分2011-10-18我需要完整点的,楼主有吗
- 粉丝: 4
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助