Android之EditText

简介

EditText 在开发中经常用到得一个控件,也就是输入框,是一些用户交互的场景中的重要组件。例如,用户的登录操作,需要用户输入账号和密码,然后我们获取用户输入的数据,这就是EditText派上用场的地方了。本文章整理了EditText控件的常用属性和一些用法,仅供参考。

详解

1.常用属性


2.监听EditText内容改变

再onCreate中添加监听回调

// 通过id获取xml里面对应的控件
 EditText et = findViewById(R.id.et);
et.addTextChangedListener(new TextWatcher() {
            @Override
            // 输入框内容改变前
            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

            }

            /**
             * charSequence  :  显示的文本内容
             * int i  : 开始位置
             * int i1  : 0 增加  非零 删除个数
             * int i2  : 0  删除   非零 增加个数
             * */
            // 输入框需要改变的内容
            @Override
            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
                
            }

            // 内容改变后
            @Override
            public void afterTextChanged(Editable editable) {

            }
        });

3.监听软键盘回车键响应事件

// 通过id获取xml里面对应的控件
            EditText et = findViewById(R.id.et);
        // 监听键盘的key按下的事件
        //1.创建匿名类对象
        //2.当前这个Activity来监听事件
        et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
            @Override
            public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
                //回车键按下后需要执行的内容
                System.out.println("ss");
                return false;
            }
        });

5.EditText获取焦点并自动弹出键盘

在布局中添加

android:focusable="true"
android:focusableInTouchMode="true"

在代码中添加(onCreate)

//先获取对应的EditText
EditText et_input = findViewById(R.id.edit);
et_input.setFocusable(true);
et_input.setFocusableInTouchMode(true);
et_input.requestFocus();
_activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容