EditText的基本用法

1.绑定EditText
EditText.addTextChangedListener(watcher);
2.添加监听事件
TextWatcher watcher = new TextWatcher() {
        private CharSequence temp;
        private int editStart;
        private int editEnd;

        @Override
        public void onTextChanged(CharSequence s, int start, int before,
                int count) {
            // TODO Auto-generated method stub
            temp = s;
        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
            // TODO Auto-generated method stub
            // mTextView.setText(s);//将输入的内容实时显示
        }

        @Override
        public void afterTextChanged(Editable s) {
            // TODO Auto-generated method stub
            editStart = editText.getSelectionStart();
            editEnd = editText.getSelectionEnd();
            // 当输入长度满足时
            if (temp.length() > 0) {
                // 按钮可点击背景色为
                button.setBackgroundResource(R.drawable.yuanjiaobiankuang_lan);
                button.setClickable(true);
            } else {
                 // 按钮不可点击背景色为
                button.setBackgroundResource(R.drawable.yuanjiaobiankuang_hui);
                button.setClickable(false);
            }
        }
    };
**********************************************************************************************************************
设置密码是否显示明文:
显示密码:
editText1  .setTransformationMethod(HideReturnsTransformationMethod
                                    .getInstance());
隐藏密码:
editText1  .setTransformationMethod(PasswordTransformationMethod
                                    .getInstance());


----------------------------------------------------------------------------------------------------------------------

在android的输入框里,如果要修改光标的颜色及粗细步骤如下两步即可搞定: 
1.在资源文件drawable下新建一个光标控制shape_cursor.xml

<?xml version="1.0" encoding="utf-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><sizeandroid:width="1dp" /><solidandroid:color="#008000"  /></shape>
android:textCursorDrawable="@drawable/shape_cursor"

  
  
if (count != null) {
            // 设置光标位置
            editText0.setSelection(count.length());
        }


***************************************************************
EditText在进入界面后会抢占焦点,在界面再次显示后会再次抢占焦点。
原因:
解决方案:
android:windowSoftInputMode=“stateHidden" 再manifest.xml设置activity后第一次进入就不会在抢占焦点,但是要返回界面后不会再次抢占就需要 在EditText的父级的同级控件注意不是父级控件中找一个,设置成 android:focusable="true" android:focusableInTouchMode=“true”,这样就会截断其的抢占行为。 
.............................................................................................................................
设置为不自动弹出输入法:
InputMethodManager imm = (InputMethodManager) getSystemService( MainActivity.this .INPUT_METHOD_SERVICE);
        getWindow().setSoftInputMode(
                WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);


getWindow().setSoftInputMode(
                WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
                        | WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);



判断edittext是否获取焦点:
editText0.setOnFocusChangeListener(new View.OnFocusChangeListener() {

            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                //hasFocus:有焦点时
        
            }
        });



设置edittext滚动:
textView0.setMovementMethod(ScrollingMovementMethod.getInstance());
隐藏滚动进度条: android:scrollbars="none"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值