andriod入门学习总结(三)

本文详细介绍了Android开发中常用的UI控件,包括SearchView、TextView、EditText、Button、ImageView、RadioButton和CheckBox,提供了布局代码示例及各控件的属性说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章继续写表面看得到的东西。常见的控件。


 1.搜索框

SearchView是Android原生的搜索框控件,可以很方便的添加到用户界面中,用于用户的搜索查询功能。但是SearchView的UI是固定的,自定义起来比较麻烦,如果对SearchView的要求比较高,还是使用EditText和Button自定义实现。

基本布局代码:

        <SearchView
            android:id="@+id/searchView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:queryHint="搜索">
        </SearchView>

属性:

属性名称相关方法描述
android:iconifiedByDefaultsetIconifiedByDefault(boolean)设置搜索图标是否显示在搜索框内
android:imeOptionssetImeOptions(int)设置输入法搜索选项字段,默认是搜索,可以是:下一页、发送、完成等
android:inputTypesetInputType(int)设置输入类型
android:maxWidthsetMaxWidth(int)设置最大宽度
android:queryHintsetQueryHint(CharSequence)

设置查询提示字符串

 

2文本框:用于显示文本。

    <TextView
        android:id="@+id/textView"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:gravity="center"
        android:text="TextView"
        android:textColor="#111111"
        android:textStyle="bold|italic"
        android:background="#000000"
        android:layout_centerInParent="true"
        android:shadowColor="#F9F900"
        android:shadowDx="10.0"
        android:shadowDy="10.0"
        android:shadowRadius="3.0"
        android:textSize="18sp" />

TextView.setText(),给textview设置文本。

3.输入框

布局:

<EditText   
        android:layout_width="fill_parent"   
        android:layout_height="wrap_content"
        android:hint="默认提示文本"
        android:textColorHint="#111111"//设置文本颜色
        android:selectAllOnFocus="false"//点击文本框不会选中已输入的文字。
        android:inputType="none"  //不限制输入文本的类型
        android:minLines="1"//设置输入框的最小行数
        android:maxLines="3"//最大行数
        android:textScaleX="1"    //设置字与字的水平间隔
        android:textScaleY="1"  //设置字与字的垂直间隔
        android:capitalize="sentences"//设置第一个字母大写
/> 

4.按钮button

按钮是TextView的子类。分为普通按钮和ImageButton图像按钮。

  • drawable:引用的Drawable位图,我们可以把他放到最前面,就表示组件的正常状态〜
  • state_focused:是否获得焦点
  • state_window_focused:是否获得窗口焦点
  • state_enabled:控件是否可用
  • state_checkable:控件可否被勾选,例如:复选框
  • state_checked:控件是否被勾选
  • state_selected:控件是否被选择,针对有滚轮的情况
  • state_pressed:控件是否被按下
  • state_active:控件是否处于活动状态,例如:slidingTab
  • state_single:控件包含多个子控件时,确定是否只显示一个子控件
  • state_first:控件包含多个子控件时,确定第一个子控件是否处于显示状态
  • state_middle:控件包含多个子控件时,确定中间一个子控件是否处于显示状态
  • state_last:控件包含多个子控件时,确定最后一个子控件是否处于显示状态

5.ImageView

android:background="@drawable/123"     //设置的是背景,根据ImageView给定的宽度来进行拉伸,填充整个ImageView
android:src="@drawable/123"            //设置的是内容,按照图片大小直接填充,不会对图片进行拉伸(写这句话的时候我还纠结了一下填充和填满是不是一个意思……想了想应该不是一个意思,填充就是指往里填的动作)

用于设置缩放时是否保持原图长宽比:

android:adjustViewBounds="true"

android:maxHeight:设置ImageView的最大高度

android:maxWidth:设置ImageView的最大宽度

android:scaleType用于设置显示的图片如何缩放或者移动以适应ImageView的大小 Java代码中可以通过imageView.setScaleType(ImageView.ScaleType.CENTER);来设置~ 可选值如下:

  • fitXY:对图像的横向与纵向进行独立缩放,使得该图片完全适应ImageView,但是图片的横纵比可能会发生改变
  • fitStart:保持纵横比缩放图片,知道较长的边与Image的编程相等,缩放完成后将图片放在ImageView的左上角
  • fitCenter:同上,缩放后放于中间;
  • fitEnd:同上,缩放后放于右下角;
  • center:保持原图的大小,显示在ImageView的中心。当原图的size大于ImageView的size,超过部分裁剪处理。
  • centerCrop:保持横纵比缩放图片,知道完全覆盖ImageView,可能会出现图片的显示不完全
  • centerInside:保持横纵比缩放图片,直到ImageView能够完全地显示图片
  • matrix:默认值,不改变原图的大小,从ImageView的左上角开始绘制原图, 原图超过ImageView的部分作裁剪处理

6.RadioButton

单选按钮,就是在一堆按钮里只能够选中一个按钮,所以需要把RadioButton放到RadioGroup按钮组中,从而实现单选功能。

    <RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1"
            />
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2"/>
    </RadioGroup>

CheckBox 复选框

可以同时选中多个选项,至于获得选中的值,同样有两种方式: 1.为每个CheckBox添加事件:setOnCheckedChangeListener 2.弄一个按钮,在点击后,对每个checkbox进行判断:isChecked();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值