Android TextView 与 EditText 的区别与使用

一、简介

  • TextView 继承 View,作用就是在界面上显示文本(类似于 iOS 中的 UILabel),同时它还是 EditTextButton 两个 UI 组件类的父类。

  • 另外 Android 关闭了它的文字编辑功能,如果想编辑内容,则可以使用 EditText

二、TextView

  • TextView 常用属性

    属性含义
    idTextView 设置一个组件 id,根据 id,可以在 Java 代码中通过findViewById() 的方法获取到该对象,然后进行相关属性的设置。
    layout_width组件宽度
    layout_height组件高度
    text设置显示的文本内容,通常是把字符串写到 res/values/strings.xml 文件中, 然后通过 @string/xxx 取得对应的字符串内容。
    textSize字体大小,单位一般是用 sp
    textColor设置字体颜色,同上,通过 res/values/colors.xml 资源来引用(使用:@color/xxx
    textStyle设置字体风格,三个可选值: normal(无效果)、bold(加粗)、 italic(斜体)。
    autoLink识别链接类型:webemailphonemapnoneall
    lines最大行数
    minLines最小行数
    ellipsize内容超出的时候,省略显示方式。start:省略号在开头 "...dzm"end:省略号在结尾 "dzm..."middle:省略号在中间 "dzm...xyq"marquee:跑马灯(实现跑马灯,必须让该控件获得焦点)
    gravity设置组件中内容的对齐方向,TextView 中是文字,ImageView 中是图片等等,它可以控制内容在组件中多个方位对齐内容:上下左右中
    textAlignment设置组件中内容的对齐方向,只能 居中居左居右
    background控件的背景颜色,可以理解为填充整个控件的颜色,可以是图片。
    shadowColor阴影颜色
    shadowDx阴影 x 方向位移
    shadowDy阴影 y 方向位移
    shadowRadius阴影的半径,也可以算作是模糊度。
  • 案例代码

    <!-- TextView -->
    <TextView
        android:id="@+id/dzm"
        android:layout_width="300dp"
        android:layout_height="300dp"
        android:text="@string/app_name"
        android:textSize="50sp"
        android:textColor="#f11"
        android:textStyle="bold"
        android:autoLink="email"
        android:lines="2"
        android:minLines="2"
        android:ellipsize="start"
        android:gravity="top"
        android:textAlignment="textEnd"
        android:background="@drawable/shape_text"
        android:shadowColor="#cff"
        android:shadowDx="0"
        android:shadowDy="50"
        android:shadowRadius="20"
        tools:ignore="RtlCompat" />
    

    image.png

三、EditText

  • EditText 特有属性,同时支持上面 TextView 属性使用。

    属性含义
    hint默认提示文本
    textColorHint默认提示文本颜色
    textColorHighlight被选中文字的底色,默认为蓝色
    selectAllOnFocus布尔值,点击输入框获得焦点后,获取到输入框中所有的文本内容。
    inputType键盘类型,对输入的数据进行限制。
    minLines最小行数
    maxLines最大行数
    singleLine设置单行输入,一旦设置为 true,则文字不会自动换行。
    textScaleX控制字与字之间的间距
    capitalizesentences:仅第一个字母大写。words:每一个单词首字母大小,用空格区分单词。characters:每一个英文字母都大写。
    numeric设置只能输入整数,如果是小数则是:decimal
    gray=“top”多行中指针在第一行第一位置
    typeface设置字型 normalsansserifmonospace
    autoText自动拼写帮助
    freezesText设置保存文本的内容以及光标的位置
    inputMethod为文本指定输入法,需要完全限定名(完整的包名) eg:com.huwei.xxxim
    textCursorDrawable设置光标颜色
    et.setSelection(et.length())设置调整光标位置到最后一行
    et.requestFocus()请求获取焦点,低版本会自动弹出键盘,稍微高点的版本则需要手动去弹出键盘
    et.clearFocus()清除焦点
  • 案例代码

    // 获取到编辑框
    EditText et = (EditText)findViewById(R.id.dzm);
    // 获取焦点
    et.requestFocus();
    // 设置光标位置
    et.setSelection(2);
    

    image.png

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Android 中,TextViewEditText 都是常用的用户界面元素,用于显示文本和接收用户输入。layout_constraintEnd_toEndOf 属性是用于约束布局的属性,用于指定视图的右侧边缘与另一个视图的右侧边缘对齐。 下面是对 TextViewEditText 的 layout_constraintEnd_toEndOf 属性的使用方法的说明: 1. 布局文件中添加 TextViewEditText 元素: ```xml <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a TextView" /> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="Enter text here" /> ``` 2. 使用 layout_constraintEnd_toEndOf 属性约束 TextViewEditText: ```xml <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a TextView" app:layout_constraintEnd_toEndOf="@id/editText" /> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="Enter text here" /> ``` 在上述代码中,TextView 的 layout_constraintEnd_toEndOf 属性被设置为 @id/editText,表示 TextView 的右侧边缘与 EditText 的右侧边缘对齐。 这样,当布局被渲染时,TextView 的右侧边缘将与 EditText 的右侧边缘对齐,从而实现了视图之间的约束关系。 希望这个回答对你有帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卡尔特斯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值