美文网首页
android EditText inputType详解

android EditText inputType详解

作者: 逝水了无痕 | 来源:发表于2016-02-21 17:32 被阅读1436次

    这是一篇关于Android EditText中的inputType详解,因为Android中inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用。这也大大的方便的操作。有时需要虚拟键盘只为字符或只为数字。所以inputType尤为重要。<code>
    <EditText android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    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" 网址  
    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" 时间键盘

    1.获得焦点后全选组件内所有文本内容

    当我们点击想当我们的输入框获得焦点后,不是将光标移动到文本的开始或者结尾;而是 获取到输入框中所有的文本内容的话!这个时候我们可以使用selectAllOnFocus属性
    android:selectAllOnFocus="true"

    2.设置最小行的行数:android:minLines="3"
    或者设置EditText最大的行数:android:maxLines="3"
    PS:当输入内容超过maxline,文字会自动向上滚动!!

    3.设置文字间隔,设置英文字母大写类型

    android:textScaleX="1.5" //设置字与字的水平间隔
    android:textScaleY="1.5" //设置字与字的垂直间隔

    4.设置EditText获得焦点,同时弹出小键盘

    InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
    imm.hideSoftInputFromWindow(view.getWindowToken(), 0); //强制隐藏键盘

    5.EditText光标位置的控制

    有时可能需要我们控制EditText中的光标移动到指定位置或者选中某些文本!EditText为我们提供了setSelection()的方法,方法有两种形式:
    setSelection(int index);
    setSelection(int start,int stop);
    一个参数的是设置光标位置的,两个参数的是设置起始位置与结束位置的中间括的部分,即部分选中!当然我们也可以调用setSelectAllOnFocus(true);让EditText获得焦点时选中全部文本!另外我们还可以调用setCursorVisible(false);设置光标不显示还可以调用getSelectionStart()getSelectionEnd获得当前光标的前后位置

    相关文章

      网友评论

          本文标题:android EditText inputType详解

          本文链接:https://www.haomeiwen.com/subject/sfbmkttx.html