Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)

文本类组件(文本框TextView和编辑框EditText)

  1. 一个界面是由多个组件组成的。这好比用积木搭成一座城堡。
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第1张图片
    基本UI组件可分为三类:
    (1)文本类组件:包括文本框和编辑框。
    (2)按钮类组件:包括普通按钮、图片按钮、单选按钮和复选框。
    (3)日期时间类组件:包括日期时间选择器和计时器。

  2. 文本类组件----文本框(TextView)

  • 文本框组件:在页面中显示文本信息。
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第2张图片
    在activity_main.xml文件中,用TextView标签来定义文本框组件。而我们每次创建一个project/module时,Android studio都会自动帮我们创建一个文本框组件,内容为:“Hello World!”。
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第3张图片
  • 属性:
    • android:text :设置文本框中的文字内容。可以直接在双引号中输入文字内容;也可以在string.xml文件中用String标签来定义一个字符串,再在双引号中使用这个字符串。推荐使用第二种!
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第4张图片
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第5张图片
    • android:layout_widthandroid:layout_height :分别为设置文本框的宽度和高度;通常取值为wrap_content (包裹其自身内容),即根据文字多少来决定文本框大小。
    • android:textSize :设置文字的大小。sp是专用于设置字体大小的单位。
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第6张图片
    • android:textColor :设置字体的颜色。颜色值由#后跟八位或六位16进制表示。六位十六进制即从左往右数每两位控制RGB三原色中的一元,比如:#FF0000,FF控制红色R,第一个00控制绿色G,第二个00控制蓝色B;八位十六进制只是在六位的前面加了两位来表示透明度,比如:#FFFF0000,表示完全不透明的红色。每两位(00~FF)数字越大,颜色越浓,数字越小,颜色越暗。比如在控制透明的两位上,FF为完全不透明,00为完全透明。控制红色的两位上FF表示最浓的红色,如果这时表示绿色/蓝色的两位不为00,就需要根据计算来得出最终的颜色(类似于我们常说的黄加蓝变绿)。
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第7张图片
      点击方框来选择自己想使用的颜色比较方便:
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第8张图片
    • android:singleLine :设置文本框为单行文本框。取值为true就会设置成功。
      当我把字符串demo1的值改为五个“你好,世界!”时,在屏幕中一行无法显示这么多文字,就会自动换行多行显示。而有时我们的布局只给这个文本框组件留了一行,就需要将其设置为单行文本框。Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第9张图片
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第10张图片
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第11张图片
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第12张图片
  1. 文本类组件----编辑框组件(EditText)
  • 编辑框组件:在页面中显示一个可以让用户输入文本内容的输入框。于文本框的不同在于,用户可以输入自己想输入的内容。
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第13张图片
    在activity_main.xml文件中用EditText标签来定义编辑框组件。
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第14张图片

  • 属性:由于编辑框组件是文本框组件的子类,所以文本框组件的属性编辑框组件都有。这里只介绍编辑框组件常用而文本框组件不常用的属性。

    • android:hint :在编辑框中添加提示信息。如果不添加提示信息,用户可能不知道这个编辑框要输入什么信息:
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第15张图片
      添加了提示信息就很明确了:
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第16张图片
      用户在编辑框输入内容后,只会显示输入内容,提示信息不再显示(运行后可以看到这个结果):
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第17张图片
    • android:inputType :设置编辑框中文本内容的文本类型。比如:设置为密码类型,再输入文本时就不会显示文本内容,而是显示黑点:
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第18张图片
      这个属性有很多取值,用户可以根据自己的需要来设置:
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第19张图片
    • android:drawableLeft :在编辑框中文本内容的左侧绘制图像。
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第20张图片
      比如:在文本框左侧绘制存放在minmap目录下的mr.png:
      在这里插入图片描述
    • android:drawableStart :在Android API17新提出的属性,与drawableLeft作用相同。但如果项目要求的SDK版本大于或等于API17(Android4.2),最好使用drawableStart。
    • android:drawableRight :在编辑框中文本内容的右侧绘制图像。
    • android:drawableEnd :在Android API17新提出的属性,与drawableRight作用相同。但如果项目要求的SDK版本大于或等于API17(Android4.2),最好使用drawableEnd。
      在这里插入图片描述
    • android:drawableBottom :在编辑框中文本内容的底部绘制图像。
      在这里插入图片描述
    • android:drawableTop :在编辑框中文本内容的顶部绘制图像。
      在这里插入图片描述
    • android:drawablePadding :设置编辑框中图像与文本内容的间距。取值为数值+dp。
    • android:lines :设置编辑框的最大行数。当文本内容超过最大行数,文本就自动向上滚动。
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第21张图片
      Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第22张图片
      在编辑框中上下拖动就可以看到滚动上去的内容。
  • getText() :获取用户输入的文本内容。编辑框是用来实现用户与APP交互的,这就需要获取用户输入在编辑框的内容。在MainActivity.java中用getText()方法来获取:
    首先给该编辑框定义一个id:
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第23张图片
    获取编辑框对象et:
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第24张图片
    调用getText()来获取文本内容:
    Android学习笔记(八): 基本UI组件----文本类组件(文本框TextView和编辑框EditText)_第25张图片

你可能感兴趣的:(Android)