(4.1.7)Editext自动获取焦点

  1.每次启动新的Activity的时候,输入法总是弹出来,太烦人了。

主要原因就是页面上方有个EditTexit,每次都自动获取焦点。
注意要求是:每次启动新的Activity的时候,EditTexit不要获取到焦点或者获取到焦点也不让输入法弹出来,并不是阻止输入法使用。只要第一次启动的时候别弹出来就行了,如果主动点到EditTexit的时候输入法还是得正常的弹出来的
解决:

(1)解决之道:在EditText的父级控件中找一个,设置成

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

这样,就把EditText默认的行为截断了!

(2)在OnCreate方法里面加下面这句代码
// 隐藏软键盘

getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

2.在editText中输入完以后,旁边有个send 按钮,当点击send button 关闭软键盘,再次输入的时候再弹出来。
解决:

// close input method after send
final InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(contentTextEdit.getWindowToken(), 0);

                     InputMethodManager imm = (InputMethodManager)this.getSystemService(Context.INPUT_METHOD_SERVICE);  
                        edit.setCursorVisible(false);//失去光标
                        imm.hideSoftInputFromWindow(v.getWindowToken(), 0); 

你可能感兴趣的:(android)