android-UI组件(三):ImageView及其子类

ImageView继承自View组件,它的主要功能是显示图片或者任何Drawable对象,下面是ImageView的类关系图:

android-UI组件(三):ImageView及其子类

由上图可以看出来,ImageView派生出ImageButton、ZoomButton等组件,因此ImageView支持的XML属性以及相关的方法也可以应用在ImageButton、ZoomButton上面。

下面是ImageView支持的XML属性以及相关方法的说明:

android-UI组件(三):ImageView及其子类


android-UI组件(三):ImageView及其子类

为了控制ImageView显示的图片,ImageView提供如下的方法:

android-UI组件(三):ImageView及其子类

ImageView派生出如下两个子类:

(1)ImageButton:图片按钮,这与Button按钮的区别在于:Button按钮可以显示文字,而ImageButton不能显示文字

(2)QuickContactBadge:显示关联到特定联系人的图片,QuickContactBadge继承了ImageView,因此它的本质也是图片,也可以通过android:src属性指定它显示的图片,QuickContactBadge特定的功能是:该图片可以关联到手机中指定的联系人,当用户单击图片时,系统将会打开相应联系人的联系方式界面

为了让QuickContactBadge与特定联系人相关联,可以调用如下方法进行关联:

android-UI组件(三):ImageView及其子类


ImageButton派生出一个子类ZoomButton,ZoomButton可以代表“放大”、“缩小”两个按钮,只要为ZoomButton的android:src属性分别指定btn_minus、btn_plus,即可实现“放大”、“缩小”的功能。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".ImageButtonActivity" >

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/blue" >
    </ImageButton>

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/button_selector" >
    </ImageButton>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_margin="10sp"
        android:orientation="horizontal" >

        <ZoomButton
            android:id="@+id/btn_zoom_down"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_minus" >
        </ZoomButton>

        <ZoomButton
            android:id="@+id/btn_zoom_up"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_plus" >
        </ZoomButton>
    </LinearLayout>

    <ZoomControls
        android:id="@+id/zoomControls1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal" >
    </ZoomControls>

</LinearLayout>
显示的图片如下:

android-UI组件(三):ImageView及其子类

android-UI组件(三):ImageView及其子类,布布扣,bubuko.com

android-UI组件(三):ImageView及其子类

上一篇:浅谈Android应用开发中一些概念的理解


下一篇:android ListView详解