1 软键盘弹出 EditText向上顶

方法一:只需要在 Androidmanifest中在对应的activity中添加

 android:windowSoftInputMode="adjustResize|stateHidden"

方法二:在Activity中的oncreate中setContentView之前写上这个代码

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

监控软键盘确定 搜索 按钮并赋予点击事件

在android的实践开发中,为了界面的美观,往往那些搜索框并没有带搜索按钮,而是调用了软键盘的搜索按钮

首先在xml配置文件中添加属性属性: Android:imeOptions=”actionSearch”,这样我们调用软键盘时,回车键就会显示搜索二字。 
EditText et_search= (EditText) findViewById(R.id.search_et);
watchSearch() ;
//监控软件盘的搜索按钮public void watchSearch() {
    et_search.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override public boolean onEditorAction (TextView v , int actionId , KeyEvent event) { if (actionId == EditorInfo. IME_ACTION_SEARCH ) { // 先隐藏键盘 ((InputMethodManager) et_search .getContext() .getSystemService(Context. INPUT_METHOD_SERVICE )) .hideSoftInputFromWindow(SearchActivity. this .getCurrentFocus().getWindowToken() , InputMethodManager. HIDE_NOT_ALWAYS ) ; /*
执行具体操作
*/                return true;            }            return false;        }    });}

3 输入之后点击按钮 软键盘消失

InputMethodManager inputMethodManager = (InputMethodManager) getApplicationContext().        getSystemService(Context.INPUT_METHOD_SERVICE);inputMethodManager.hideSoftInputFromWindow(et_address.getWindowToken(), 0);
//et_address为按钮上面的一个EditText

4点击EditText的时候弹出软键盘,点击EditText之外空白处软键盘消失

想要实现该功能只需要重写 public boolean onTouchEvent(MotionEvent event)方法

   
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
@Override public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { if (MakeActivity.this.getCurrentFocus() != null) { if (MakeActivity.this.getCurrentFocus().getWindowToken() != null) { imm.hideSoftInputFromWindow(MakeActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); } } } return super.onTouchEvent(event); }

更多相关文章

  1. 【android】点击事件穿透解决方案
  2. Android(安卓)UI编程基础3
  3. 系出名门Android(5) - 控件(View)之TextView, Button, ImageButt
  4. Github android客户端源代码分析之一:环境搭建
  5. 使用 Android快速开发框架 Afinal 0.3 快速开发网络应用相关APK
  6. Android动画学习笔记-Android(安卓)Animation
  7. Android之硬键盘字符映射------KeyCharacterMap
  8. android 不自动弹出软键盘
  9. 关于android软键盘弹出挤压VIEW和覆盖View的问题

随机推荐

  1. spring data RedisTemplate无效果
  2. jswdk/jsdk/jdk到底分别是什么东西
  3. JAVA-初步认识-第十章-对象的初始化过程
  4. 如何同时执行这些多方法调用?
  5. 在tomcat服务器中部署war文件
  6. Android:以编程方式设置textview的一个填
  7. 2017-2018-1 JAVA实验站 第三周作业
  8. 为什么Spring的JDBC模板不使用表的默认值
  9. Spring 3.0将文件注入资源
  10. 2009年1月19日,欢迎PyLucene加入Lucene子