一手遮天 Android - view(文本类): EditText 常用属性

项目地址 https://github.com/webabcd/AndroidDemo
作者 webabcd

一手遮天 Android - view(文本类): EditText 常用属性

示例如下:

/view/text/EditTextDemo1.java

/**
 * EditText - 文本编辑控件(继承自 TextView)
 *
 * 演示 EditText 的常用属性的使用
 */

package com.webabcd.androiddemo.view.text;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.text.InputFilter;
import android.widget.EditText;

import com.webabcd.androiddemo.R;

public class EditTextDemo1 extends AppCompatActivity {

    private EditText _editText1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view_text_edittextdemo1);

        _editText1 = (EditText) findViewById(R.id.editText1);

        sample();
    }

    // 在 java 中设置 EditText 的常用属性(更多的说明参见 TextView 吧,因为 EditText 继承自 TextView)
    private void sample() {
        _editText1.setText("我是 EditText,我继承自 TextView");

        // 相当于 xml 中的 android:maxLength="100"
        _editText1.setFilters(new InputFilter[]{new InputFilter.LengthFilter(100)});
    }
}

/layout/activity_view_text_edittextdemo1.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!--演示 EditText(继承自 TextView) 的常用属性的使用-->

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"  />

    <!--
        background - 背景。如果不需要任何背景的话就设置为 @null
        inputType - 输入类型(比如 textPassword 代表密码,number 代表数字,详细说明见后)
        background - 文本的背景颜色
        maxLength - 最大字符数
        hint - 提示信息,即 placeholder
        textColorHint - 提示信息的颜色
        drawableLeft, drawableTop, drawableRight, drawableBottom, drawablePadding - 这几个属性的说明请参见 TextViewDemo3 中的介绍
    -->
    <EditText
        android:id="@+id/editText2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginRight="20dp"
        android:layout_marginTop="20dp"
        android:padding="10dp"
        android:background="@null"
        android:inputType="phone"
        android:maxLength="11"
        android:hint="请输入手机号"
        android:textColorHint="@color/gray"
        android:drawablePadding="10dp"
        android:drawableLeft="@drawable/img_sample_son"
        android:drawableBottom="@drawable/shape_edittext_bottom_line" />

    <!--
        多行的 EditText
    -->
    <EditText
        android:id="@+id/editText3"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:padding="10dp"
        android:inputType="textMultiLine" />

    <!--
        inputType 的详细说明如下:
            android:inputType="none" // 普通字符
            android:inputType="text" // 普通字符
            android:inputType="textCapCharacters" // 普通字符(默认为 shift 按下状态)
            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" // 时间键盘
    -->
</LinearLayout>

项目地址 https://github.com/webabcd/AndroidDemo
作者 webabcd

posted @ 2021-05-31 12:24  webabcd  阅读(95)  评论(0编辑  收藏  举报