EditText小总结


    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:inputType="textPassword"   //设置为输入密码格式
    android:background="@null"// 设置为@null 输入下划线不可见
    android:gravity="top"   //当EditText全屏的时候 可以把光标设置在最右上角
    android:hint="测试"    //提示字体 随着输入会消失
    android:editable="false"  //设置为falae 则不可编辑 (其他触摸事件、滚动事件等 不会有影响)
    android:enabled="falae"  //设置为false 则EditText不可用 包括触摸事情 滚动监听等等
    android:cursorVisible="false"  //设置为false 光标不可见
    android:focusableInTouchMode="false"  //设置为false 光标不可见 触摸事件不可用
    android:textCursorDrawable="@mipmap/ic_launcher"//设置光标样式 可以为图片 也可以为颜色
    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"--时间键盘



            // EditText输入监听
    text= (EditText) findViewById(R.id.etext);

    text.addTextChangedListener(new TextWatcher() {
        /** * * @param s 变化后的所有字符 * @param start 字符起始位置 * @param count 变化前的总字节数 * @param after 变化后的总字节数 */
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {


            Log.i("111", "------" + count + "--after" + after);


        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {

        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });


    /** * 设置默认不弹出软键盘 */
    getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);



    /** * 动态设置为输入密码格式 */
    text.setTransformationMethod(PasswordTransformationMethod.getInstance());


    //输入手机号码 自动添加空格
    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {
        if (s == null || s.length() == 0) return;
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            if (i != 3 && i != 8 && s.charAt(i) == ' ') {
                continue;
            } else {
                sb.append(s.charAt(i));
                if ((sb.length() == 4 || sb.length() == 9) && sb.charAt(sb.length() - 1) != ' ') {
                    sb.insert(sb.length() - 1, ' ');
                }
            }
        }
        if (!sb.toString().equals(s.toString())) {
            int index = start + 1;
            if (sb.charAt(start) == ' ') {
                if (before == 0) {
                    index++;
                } else {
                    index--;
                }
            } else {
                if (before == 1) {
                    index--;
                }
            }
            _text.setText(sb.toString());
            _text.setSelection(index);
        }
    }

你可能感兴趣的:(EditText小总结)