EditText文字改变与软键盘的监听事件

时间:2021-06-25 17:00:25

    对于EditText对于从事android开发的人来说非常的熟悉,但是能熟练的应用这个控件也需要自己多花点心才能熟于心.我将写写关于自己在实际开发中所遇到的坑和问题及解决方案.

 使用场景:

  1.对EditText上输入的文字时时的去监听:

 使用代码如下:
mEditText.addTextChangedListener(new TextWatcher() {
    //文字改变之前的监听
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}
   //文字改变的监听
@Override public void onTextChanged(CharSequence s, int start, int before, int count) { }
   //文字改变之后的监听
@Override public void afterTextChanged(Editable s) { //注意这里的s就是EditText上的输入的文字,只需要toString()即可 }});

 2.对软键盘的监听:
 mEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {

    @Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
   //在这里可以进行对软键盘Enter键判断,对应的就是EditText在xml设置的
 android:imeOptions="actionDone" 属性对应                             
 if (actionId == EditorInfo.IME_ACTION_DONE) { 
//在这个方法中处理你需要处理的事件
return true;
}
return false; }});

  3.在开发中使用ListView和ScollView等具有滑动功能的控件的时候,当滑动的时候在界面的上面
会出现阴影解决方案:
 只需在style中配置如下属性:红色部分
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:overScrollMode">never</item>
</
style>
  总结:在开发的道路上我们可能时不时的会踩到坑,这篇文章是我实际开发中所遇到的问题和坑,希望这篇文章对你有所帮助,
谢谢!!!!!!!!!!!