android中的EditView控件

时间:2022-03-01 22:06:10

android中的EditView控件

EditText继承关系:View-->TextView-->EditText ,EditText是可编辑文本框

android中的EditView控件

1、EditText默认情况下,光标会一直的闪动,有几种方法可以取消光标的闪动

(1)利用两个EditText,第一个设置宽和高都为0dp,这样运行的时候,光标落在第一个EditText上,显示出来的效果就是隐藏了光标。

        <EditText
   android:layout_width="0dp"
   android:layout_height="0dp"
/>   <EditText
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
/>

(2)利用android中EditText自带的cursorVisible属性

android:cursorVisible="true"//显示

      android:cursorVisible="false"//隐藏
  <EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:cursorVisible="false"
/>

2、设置光标到达指定的位置
    EditText et = (EditText) findViewById(R.id.etTest);

et.setSelection(2);

3、 获得焦点时全选文本

EditText et = (EditText) findViewById(R.id.etTest);

et.setSelectAllOnFocus(true);

4、获取和失去焦点

EditText et = (EditText) findViewById(R.id.etTest);

et.requestFocus(); //请求获取焦点

et.clearFocus(); //清除焦点

5、设置EditText输入的最多字符个数

 <EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:maxLength="10"
/>

6、EditText单行显示,android:singleLine="true/false" 单行/多行

<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
/>

7、限制EditText输入信息的类型,例如:android:inputType="number",只能输入数字类型

<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="number"
/>
 //文本类型,多为大写、小写和数字符号。
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"//时间键盘

8、在EditText中显示图片,图片显示在EditText中

android:drawableTop="@drawable/ic_launcher"      //在EditText上方显示图片
android:drawableBottom="@drawable/ic_launcher" //在EditText下方显示图片
android:drawableRight="@drawable/ic_launcher" //在EditText右边显示图片
android:drawableLeft="@drawable/ic_launcher" //在EditText左边显示图片
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ic_launcher"
/>

9、设置EditText显示圆角
(1)首先在drawable中自定义一个shape.xml文件

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充颜色 -->
<solid android:color="@android:color/black"/>
<!-- 设置矩形的四个角为弧形-->
<!-- android:radius 弧形的半径 -->
<corners android:radius="12dip"/>
</shape>

(2)为xml文件中的EditText设置background,android:background="@drawable/shape"

 <EditText
android:hint="@string/et"
android:textColor="@android:color/white"
android:layout_width="fill_parent"
android:inputType="number"
android:layout_height="wrap_content"
android:background
="@drawable/shape"
/>