关于 edittext 软键盘退出监听解决方法

关于 edittext 软键盘退出监听解决办法

edittext 有个onCreateInputConnection 的方法,通过它可以自定义一个输入法连接器,那里连接器里面有个方法(finishComposingText)能监听输入完成的动作原文参考自站长网:http://www.software8.co/wzjs/yidongkaifa/3313.html.

Java代码  
  1. public class MyEditText extends EditText{  
  2.    
  3.         public MyEditText(Context context) {  
  4.                 super(context);  
  5.         }   
  6.         private OnFinishComposingListener mFinishComposingListener;  
  7.            
  8.         public void setOnFinishComposingListener(OnFinishComposingListener listener){  
  9.                 this.mFinishComposingListener =listener;  
  10.         }   
  11.         @Override  
  12.         public InputConnection onCreateInputConnection(EditorInfo outAttrs) {  
  13.                 return new MyInputConnection(super.onCreateInputConnection(outAttrs), false);  
  14.         }    
  15.         public class MyInputConnection extends InputConnectionWrapper {  
  16.                 public MyInputConnection(InputConnection target, boolean mutable) {  
  17.                         super(target, mutable);  
  18.                 }  
  19.                 @Override  
  20.                public boolean finishComposingText() {  
  21.                         boolean finishComposing = super.finishComposingText();  
  22.                         if(mFinishComposingListener != null){  
  23.                                 mFinishComposingListener.finishComposing();  
  24.                         }  
  25.                         return finishComposing;  
  26.                 }  
  27.         }     
  28.         public interface OnFinishComposingListener{  
  29.                 public void finishComposing();  
  30.         }  
  31. }