AI智能
改变未来

6.1Android常用控件及属性用法

文章目录

  • TextView(文本框)
  • EditText(编辑框)
  • Button(按钮)
  • RadioButton(单选按钮)
  • CheckBox(多选按钮)

本篇文章和下一篇文章结合讲解,本章多为概念,下一篇文章多为实际代码

 控件是界面组成的主要元素,开始都是创建容器(ViewGroup的实例),然后不断的向容器中添加界面组件,例如TextViet(文本框)、EditText(编辑框)和Button(按钮)等,这些控件与用户直接交互。

TextView(文本框)

 TextView是Android中常用组件,用来显示手机上的文本信息(字符串),TextView直接继承了View,它也是EditText、Button两个UI组件的父类。TextView作用就是在界面上显示文本——有点类似Swing编程中的JLabel,不过它比JLabel更强大
 TextView其实就是一个文本编辑框,只是Android关闭了它的文字编辑功能。如果想要定义一个可以编辑内容的文本框,则可以使用子类:EditText。TextView和EditText具有很多相似之处,它们最大的区别在于TextView不允许用户编辑文本内容,EditText允许用户编辑文本内容。
TextView常用属性:

属性 介绍
android:text 设置显示文本
android:textSize 设置字体大小,推荐单位sp,例android:textSize=“20sp”
android:textColor 设置字体颜色
android:textStyle 设置字体样式 ,粗体(bold),斜体(italic),粗斜体(bolditalic)
android:height 设置文本区域高度,支持单位:px/dp(推荐)/sp/in/mm
android:width 设置文本区域宽度,支持单位:px/dp(推荐)/sp/in/mm
android:password 设置文本以密码形式\”.\”显示
android:gravity 设置文本位置,例android:gravity=“center”,文本居中显示
android:maxLenght 设置文本长度,超出不显示,如android:maxLength=“10”
android:maxLines 设置该文本框最多占几行
android:minLines 设置该文本框最少占几行
android:phonrNumber 设置以电话号码方式输入,true或false
android:layout_height 设置TextView控件高度
android:layout_width 设置TextView控件宽度
android:capitalize 控制是否将用户输入的文本转换成大写字母,属性:
  none:不支持
  sentences:每个句子首字母大写
  words:每个单词首字母大写
  characters:每个字母都大写
android:editable 设置文本是否允许编辑
android:fontFamily 设置文本框内文本的字体
android:hint 设置当文本框内容空白时,文本框默认显示的提示文本
android:scrollHorizontally 设置文本框不够显示全部内容时是否允许水平滚动
android:shadowColor 设置文本框内文本的阴影颜色
android:shadowRadius 设置文本框内文本的阴影的模糊程度。数值越大,阴影越模糊

:①layout_width和layout_height属性可以单独使用,而width和height属性不能,如果单独使用width和height属性,此时的控件是不显示的
 ②layout_width和layout_height可以设置为wrap_content和match_parent,而width和height只能设置固定值,否则产生编译错误
 ③若果要使用width和height,就必须同时设置layout_width和layout_height属性,把width和height属性作为组件的微调使用

  1. 字体水平滚动(走马灯)
    android:singleLine=“true”:单行显示;实现跑马灯让它单行滚动,必须设置单行显示
    android:ellipsize=“marquee”:设置走马灯效果
    android:focusable=“true”:设置是否调取焦点,跑马灯设置为true
    android:focusableInTouchMode=“true”:设置在触碰时是否获取焦点 ,跑马灯设置为true
    android:marqueeRepeatLimit=“marquee_forever”:在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次
<TextViewandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"中国 中国 中国 中国 中国 中国 中国 中国\"android:singleLine=\"true\"android:ellipsize=\"marquee\"android:marqueeRepeatLimit=\"marquee_forever\"android:focusable=\"true\"android:focusableInTouchMode=\"true\" />

 截图看不出效果,不放截图

EditText(编辑框)

 EditText与TextView非常相似,与TextView共用了许多属性和方法,EditText用来接收用户向程序中输入的信息,将输入的信息传递给Android程序
 EditText继承自TextView,与TextView最大的不同是用户可以在设备上对EditText控件进行操作,同时还可以为EditText控件设置监听器,用来测试用户输入的内容是否合法。

属性 方法
android:hint 设置EditText没有输入内容时显示的提示文本
android:textSize 设置字体大小
android:maxLines 设置最大行数
android:minLines 设置最小行数
android:capitalize 设置首字母大写
android:edittable 设置是否可编辑
android:inputType 设置用户输入指定类型
android:letterSpacing 设置字间距
android:password 设置文本以密码形式“.”显示
android:paddingLeft 设置内边距;设置字体距左距离
android:paddingRight 设置内边距;设置字体距右距离
android:phoneNumber 设置文本以电话号码方式输入
android:background background=“@null”:设置EditText显示框默认没有下划线
android:scrollHorizontally 设置文本框不够显示全部内容时是否允许水平滚动
android:drawableLeft 设置文本框左侧图标资源
android:drawableRight 设置文本框右侧图标资源
android:drawablePadding 设置图片资源的内边距
android:lineSpacingExtra 设置行间
android:numeric 设置编辑框只能接收的样式;integer整数;decimal小数;signed符号
android:maxLenght 设置文本长度,超出不显示,如android:maxLength=“10”
<EditTextandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:hint=\"输入密码\"android:background=\"@null\"android:password=\"true\"android:textSize=\"20sp\"android:layout_gravity=\"center_horizontal\"android:letterSpacing=\"1\"android:numeric=\"integer\"android:maxLength=\"4\"/>

运行结果(可以在运行出来的界面中输入):

Button(按钮)

 Button(按钮)继承了TextView,所以很多属性也适用于Button。Button主要用于响应用户的一系列点击事件,使程序更加流畅和完整

属性 方法
android:text 设置按钮上的显示文本
android:textSize 设置文本大小

 Button按钮常用的监听事件有3种:
  ①指定onClick属性(适合单一按钮)
  ②使用匿名内部类(方便,快捷)
  ③在当前Activity实现OnClickListener接口(按钮较多适用)

<Buttonandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"按钮\"android:textSize=\"30sp\"android:layout_gravity=\"center_horizontal\"android:background=\"#ff9897\" />

运行:

RadioButton(单选按钮)

 RadioButton是单选按钮,需要与RadioGrou配合使用,RadioGroup是单选组合集,可容纳多个RadioButton,并把它们组合在一起,实现单选状态。RadioButton默认垂直排序,可以通过orientation属性设置排序方向。
 单选按钮通过setOnCheckedChangeListener()方法实现监听事件

属性 方法
android:orientation 控制RadioButton排列方向
android:checked 设置默认选中状态;true默认选中;false默认不选中

<RadioGroupandroid:layout_width=\"match_parent\"android:layout_height=\"wrap_content\"><RadioButtonandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"男\"android:textSize=\"20sp\" /><RadioButtonandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"女\"android:textSize=\"20sp\" /></RadioGroup>

运行:

如果默认选中“男”,在“男”中添加android:checked=\”true\”属性:

<RadioGroupandroid:layout_width=\"match_parent\"android:layout_height=\"wrap_content\"><RadioButtonandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"男\"android:textSize=\"20sp\"android:checked=\"true\"/><RadioButtonandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"女\"android:textSize=\"20sp\" /></RadioGroup>

运行:

CheckBox(多选按钮)

 CheckBox是多选按钮或复选按钮,可以多选,直接可以单独定义。排序顺序由父布局定义
 多选按钮通过CompoundButton.onCheckedChangeListener定义接口实现监听事件

<CheckBoxandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"面条\"android:textSize=\"20sp\" /><CheckBoxandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"米饭\"android:textSize=\"20sp\" /><CheckBoxandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"凉皮\"android:textSize=\"20sp\" /><CheckBoxandroid:layout_width=\"wrap_content\"android:layout_height=\"wrap_content\"android:text=\"泡馍\"android:textSize=\"20sp\" />

运行:

注:本人通过所学、所知的Android知识写博客,以达到复习、学习、加深Android的相关知识。文中语气多为向他人讲解语气,但我不作为Android知识的 讲解 或 传播者 写博客,只是为了本人自己学习。文章之中肯定会出现错误,劳烦在空余之时给出指点、建议,谢谢。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 6.1Android常用控件及属性用法