Android所有控件的主父类是,实验二 android基本控件实验.doc

实验二 android基本控件实验

【目的】

熟悉Android常用控件的基本操作,掌握它们的基本使用方法。了解控件之间的构成关系,熟悉适配器的使用原理。

【要求】

了解控件的继承关系;

掌握适配器的使用;

掌握信息提示的实现机制;

实现基本界面。

【原理】

控件类之间的关系

android.view.View类(视图类)呈现了最基本的UI构造块。View类是Android中的一个超类,几乎包含了所有的屏幕类型,主要负责绘制和事件处理。

Android中控件类的扩展结构如图所示。

View有众多的扩展者,它们大部分是在android.widget包中,这些继承者实际上就是Android系统中的“控件”。View实际上就是各个控件的基类,创建交互式的图形用户界面的基础。

View的直接继承者包括文本视图(TextView)、图像视图(ImageView)、进度条(ProgressBar)等。它们各自又有众多的继承者。每个控件除了继承父类功能之外,一般还具有自己的公有方法、保护方法、XML属性等。

在Android中使用各种控件的一般情况是在布局文件中可以实现UI的外观,然后在Java文件中实现对各种控件的控制动作。控件类的名称也是它们在布局文件XML中使用的标签名称。

控件通用行为和属性

View是Android中所有控件类的基类,因此View中一些内容是所有控件类都具有的通用行为和属性。

提示:由于Java语言不支持多重继承,因此Android控件不可能以基本功能的“排列组合”的方式实现。在这种情况下,为了实现功能的复用,基类的功能往往做得较强,作为控件的祖先类,View所实现的功能也是最多的。

控件类经常在布局文件中使用,因此其可以使用XML属性(XMLAttributes),和Java代码经常具有对应关系。

View作为各种控件的基类,其XML属性所有控件通用,XML属性及其对应的方法如表1所示。

表1 View中的XML属性及其对应的方法

XML属性名称

Java中的方法

描述

android:background

setBackgroundResource(int)

设置背景

android:clickable

setClickable(boolean)

设置View是否响应单击事件

android:visibility

setVisibility(int)

控制View的可见性

android:focusable

setFocusable(boolean)

控制View是否可以获取焦点

android:id

setId(int)

为View设置标识符,可通过findViewById方法获取

android:longClickable

setLongClickable(boolean)

设置View是否响应长单击事件

android:soundEffectsEnabled

setSoundEffectsEnabled(boolean)

设置当View触发单击等事件时是否播放音效

android:saveEnabled

setSaveEnabled(boolean)

如果未作设置,当View被冻结时将不会保存其状态

android:nextFocusDown

setNextFocusDownId(int)

定义当向下搜索时应该获取焦点的View,如果该View不存在或不可见,则会抛出RuntimeException异常

android:nextFocusLeft

setNextFocusLeftId(int)

定义当向左搜索时应该获取焦点的View

android:nextFocusRight

setNextFocusRightId(int)

定义当向右搜索时应该获取焦点的View

android:nextFocusUp

setNextFocusUpId(int)

定义当向上搜索时应该获取焦点的View

其中,android:id表示控件的标识,通常需要在布局文件中指定这个属性。View中与控件标识相关的几个方法如下所示:

public int getId() // 获得控件的id(int类型)

public void setId(int id) // 设置控件的id(int类型)

public Object getTag() // 获得控件的tag(Object类型)

public void setTag(Object tag) // 设置控件的tag(Object类型)

对于一个控件,也就是View的继承者,整数类型id是其主要的标识。其中,getId()可以获得控件的id,而setId()可以

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值