Android Edittext获取焦点后,弹出的软键盘显示搜索、发送、完成等功能 在EditText加一个属性

Android Edittext获取焦点后,弹出的软键盘显示搜索、发送、完成等功能

在EditText加一个属性

android:imeOptions="actionSearch"(搜索)

android:imeOptions="actionSend"(发送)   

android:imeOptions="actionNext"(下一项),

android:imeOptions="actionDone"(完成),

android:imeOptions="actionGo"(前往)等等;

有时候

android:imeOptions="actionSearch"(搜索)会不起作用,会显示换行

这是因为在2.3及以上版本不起作用,2.3以下就好使

这时加上android:singleLine="true"即可

如果设置了输入类型

如:android:inputType="number"

android:imeOptions="actionSearch"(搜索)也会不起作用,会显示换行

有时软键盘会把原来的布局挤上去

可以在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan"

或者当返回时  先去隐藏软键盘

InputMethodManager inputmanger = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                inputmanger.hideSoftInputFromWindow(arg0.getWindowToken(), 0);

有时候为了布局美观,在搜索时没有搜索按钮,而是调用软件盘上的按钮。调用的实现只需要在XML在输入框中加入Android:imeOptions="actionSearch",另外,还要设置android:singleLine="true",保证点击不会换行,最后调用软键盘时,回车键就会显示搜索二字。

然后调用 OnEditorActionListener,不是OnKeyListener

?

在CODE上查看代码片
  1. et_search.setOnEditorActionListener(new TextView.OnEditorActionListener() {  
  2.     @Override  
  3.     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {  
  4.         if (actionId == EditorInfo.IME_ACTION_SEARCH){  
  5.             isSearch = true;  
  6.             page = 1;  
  7.             MyUtils.hideSoftKeyboard(EnterShopActivity.this,v);  
  8.             getData();  
  9.             return true;  
  10.         }  
  11.         return false;  
  12.     }  
  13. });  

android:imeOptions="actionSearch"(搜索)

android:imeOptions="actionSend"(发送)   

android:imeOptions="actionNext"(下一项),

android:imeOptions="actionDone"(完成),

android:imeOptions="actionGo"(前往)等等;

有时候

android:imeOptions="actionSearch"(搜索)会不起作用,会显示换行

这是因为在2.3及以上版本不起作用,2.3以下就好使

这时加上android:singleLine="true"即可

如果设置了输入类型

如:android:inputType="number"

android:imeOptions="actionSearch"(搜索)也会不起作用,会显示换行

有时软键盘会把原来的布局挤上去

可以在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan"

或者当返回时  先去隐藏软键盘

InputMethodManager inputmanger = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                inputmanger.hideSoftInputFromWindow(arg0.getWindowToken(), 0);

有时候为了布局美观,在搜索时没有搜索按钮,而是调用软件盘上的按钮。调用的实现只需要在XML在输入框中加入Android:imeOptions="actionSearch",另外,还要设置android:singleLine="true",保证点击不会换行,最后调用软键盘时,回车键就会显示搜索二字。

然后调用 OnEditorActionListener,不是OnKeyListener

?

在CODE上查看代码片
  1. et_search.setOnEditorActionListener(new TextView.OnEditorActionListener() {  
  2.     @Override  
  3.     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {  
  4.         if (actionId == EditorInfo.IME_ACTION_SEARCH){  
  5.             isSearch = true;  
  6.             page = 1;  
  7.             MyUtils.hideSoftKeyboard(EnterShopActivity.this,v);  
  8.             getData();  
  9.             return true;  
  10.         }  
  11.         return false;  
  12.     }  
  13. });  

猜你喜欢

转载自blog.csdn.net/beyondforme/article/details/79131424