Android基本控件学习

Android中常见的系统控件有TextView、EditText、Button、ImageButton、ImageView、Checkbox、RadioButton、时钟和计时器等。

1.TextView

1)TextView是一种用于显示字符串的控件,还可以链接手机号码及网页等

使用autoLink关键字来选择链接类型,autoLink的可选类型有(none/web/email/phone/map/all) 设置一个URL链接 ,可以点击访问。

例如:android:text="拨打手机:12345678"

          android:autoLink="phone"

2)在TextView中显示图片,可通过设置背景的方式显示

        例如:android:background=”@drawable/icon”
                  然后设置图片在TextView的锚点位置
                  android:drawableBottom=”@drawable/icon” //图片位于Text下方
                  android:drawableTop=”@drawable/icon”       //图片位于Text上方
                  android:drawableLeft=”@drawable/icon”       //图片位于Text左方
                  android:drawableRight=”@drawable/icon”    //图片位于Text右方

3)TextView文本滚动

在原TextView控件上加下列语句即可实现文本滚动

        android:singleLine="true"       //是否单行显示文本
        android:ellipsize="marquee"     //文本超过控件长度,如何处理文本内容,此处为滚动动画显示
        android:focusable="true"        //是否获得焦点
        android:focusableInTouchMode="true"    //是否在触摸模式下获得焦点

        android:marqueeRepeatLimit="marquee_forever"//重复滚动的次数

注:一个界面中,只能有一个textView获得焦点,暂时只能让一个textView的文字滚动起来

2.EditText

EditText是用来输入和编辑字符串的控件,继承自TextView类,允许用户对文本进行编辑。除了TextView属性外,EditText常用属性如下:

  •   android:cursorVisible:设置光标是否可见,默认可见
  •   android:hint="默认提示文本"
  •   android:textColorHint="#03A9F4"
  •   android:inputType="文本框类型"(限制EditText输入类型)

 inputType具体参数如下:

  //文本类型,多为大写、小写和数字符号,(数字符号)
    android:inputType="none"//输入普通字符(英语)
    android:inputType="text"//输入普通字符(汉字)
    android:inputType="textCapCharacters"//输入普通字符
    android:inputType="textCapWords"//单词首字母大小
    android:inputType="textCapSentences"//仅第一个字母大小
    android:inputType="textAutoCorrect"//前两个自动完成
    android:inputType="textAutoComplete"//前两个自动完成
    android:inputType="textMultiLine"//多行输入
    android:inputType="textImeMultiLine"//输入法多行(不一定支持)
    android:inputType="textNoSuggestions"//不提示
    android:inputType="textUri"//URI格式
    android:inputType="textEmailAddress"//电子邮件地址格式
    android:inputType="textEmailSubject"//邮件主题格式
    android:inputType="textShortMessage"//短消息格式
    android:inputType="textLongMessage"//长消息格式
    android:inputType="textPersonName"//人名格式
    android:inputType="textPostalAddress"//邮政格式
    android:inputType="textPassword"//密码格式
    android:inputType="textVisiblePassword"//密码可见格式
    android:inputType="textWebEditText"//作为网页表单的文本格式
    android:inputType="textFilter"//文本筛选格式
    android:inputType="textPhonetic"//拼音输入格式
 //数值类型
    android:inputType="number"//数字格式
    android:inputType="numberSigned"//有符号数字格式
    android:inputType="numberDecimal"//可以带小数点的浮点格式
    android:inputType="phone"//拨号键盘
    android:inputType="datetime"//日期+时间格式
    android:inputType="date"//日期键盘
    android:inputType="time"//时间键盘


3.按钮Button

Android按钮Button可包含文本、图片和图片及文字,Button是TextView的直接子类

  • id属性,一般是在布局文件中通过android:id="@+id/buttonOne"这样的方式来设置,其中“buttonOne”就是我们为按钮设置的id值,用户在代码中可以通过findViewById(R.id.buttonOne)来获得这个Button组件。
  • text属性,按钮文本内容
  • Button按钮中可设置图片相对text的位置,可用android:drawableTop="图片URL"设置(右侧drawableRight、左侧drawableLeft、底部drawableBottom) 

4.图片按钮ImageButton

  • ImageView的子类,不能定义text属性
  • android:src="URL"    设置按钮上的图片

5.图片控件ImageView

  • 直接继承View类
  • 显示图片,图片来源可以是资源ID,也可以是Drawable对象或Bitmap对象,还可以是ContentProvider的URI
  • 关于ImageView和ImageButton设置图片时的区别:

ImageView和ImageButton在用src指定图片的时候,不设置具体宽高,显示效果一样; 设置了具体宽高,若宽高不是图片的原始大小,ImageView会根据宽高放大或者缩小,ImageButton会显示原始图片大小。

6.方形复选框CheckBox

  • Android中checkbox默认为复选框,也就是多选,实现单选的话,可以让checkbox添加监听,当已经有一个点击了,点击另外一个的时候,修改默认的状态,实现单选。

7.圆形单选框RadioButton

  • 同CheckBox不同,RadioButton组件则让用户仅可以从多个选项中选择一个,即多个RadioButton置于一个RadioGroup容器中只选其一
  • 选择性别时就特别适合RadioButton
  • RadioButton和CheckBox的区别:

  1. 单个RadioButton在选中后,通过点击无法变为未选中,单个CheckBox在选中后,通过点击可以变为未选中
  2. 一组RadioButton,只能同时选中一个,一组CheckBox,能同时选中多个
  3. RadioButton在大部分UI框架中默认都以圆形表示,CheckBox在大部分UI框架中默认都以矩形表示
  • RadioButton和RadioGroup的关系:
  1. RadioButton表示单个圆形单选框,而RadioGroup是可以容纳多个RadioButton的容器
  2. 每个RadioGroup中的RadioButton同时只能有一个被选中
  3. 不同的RadioGroup中的RadioButton互不相干,即如果组A中有一个选中了,组B中依然可以有一个被选中
  4. 大部分场合下,一个RadioGroup中至少有2个RadioButton

8.时钟和计时器

  • 时钟显示类主要包括TextClock和AnalogClock,前者是一个简单地显示时间的文本框,后者则可以以表盘的形式显示时间。
  • 计时器组件Chronometer提供即时功能,显示从开始计时起过去了多长时间。
  • 主要方法有开始计时start()和停止计时stop()。

你可能感兴趣的:(Android基础)