Android 软键盘状态并隐藏输入法的实例

Android 软键盘状态并隐藏输入法的实例

1 软键盘状态的切换

2 强制隐藏输入法键盘

MainActivity如下:

package cc.c; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; import android.app.Activity; import android.content.Context; /** * Demo描述: * 1 软键盘状态的切换 * 2 强制隐藏输入法键盘 */ public class MainActivity extends Activity { private EditText mEditText; private Button mButton; private Context mContext; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); init(); } private void init(){ mContext=this; mEditText=(EditText) findViewById(R.id.editText); mButton=(Button) findViewById(R.id.button); mButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //toggleInput(mContext); hideInput(mContext,mEditText); } }); } /** * 切换软键盘的状态 * 如当前为收起变为弹出,若当前为弹出变为收起 */ private void toggleInput(Context context){ InputMethodManager inputMethodManager = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); } /** * 强制隐藏输入法键盘 */ private void hideInput(Context context,View view){ InputMethodManager inputMethodManager = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); } }

main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:hint="Input here" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@id/editText" android:layout_centerHorizontal="true" android:layout_marginBottom="15dp" android:hint="Button" /> </RelativeLayout>

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2024-08-01 14:18:54

Android 软键盘状态并隐藏输入法的实例的相关文章

Android软键盘的显示隐藏功能实现过程

一.软键盘显示的原理 软件盘的本质是什么?软键盘其实是一个Dialog! InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示.当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间,然后将该Dialog显示在底部,或者全屏显示. 二.活动主窗口调整 android定义了一个属性,名字为windowSoftInputMode, 用它可以让程序可以控制活动主

Android 软键盘弹出隐藏挤压界面等各种问题小结_Android

Android中软键盘的使用是非常多的,下面为软键盘常用的设置: 1.横屏时,点击输入框出现全键盘解决方案: 在EditText.searchview等控件中加 android:imeOptions="flagNoExtractUi" 2.竖屏时,安卓会出现半屏. case1:你的输入框处于中下的位置,这样的话,键盘可能挡住输入框. 解决方法:在manifest中对activity设置 android:windowSoftInputMode="adjustResize&quo

Android 软键盘弹出隐藏挤压界面等各种问题小结

Android中软键盘的使用是非常多的,下面为软键盘常用的设置: 1.横屏时,点击输入框出现全键盘解决方案: 在EditText.searchview等控件中加 android:imeOptions="flagNoExtractUi" 2.竖屏时,安卓会出现半屏. case1:你的输入框处于中下的位置,这样的话,键盘可能挡住输入框. 解决方法:在manifest中对activity设置 android:windowSoftInputMode="adjustResize&quo

Android软键盘状态的切换及其强制隐藏

MainActivity如下: package cc.c; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; import andro

Android 软键盘自动弹出与关闭实例详解

Android 软键盘自动弹出与关闭 在我们写修改信息或者搜索,修改密码等界面的时候,用户进入这个界面的主要目的就是输入修改/查找 某些信息,为了用户体验应该自动弹出软键盘而不是让用户主动点击输入框才弹出. 1.软键盘的自动弹出 private void showKeyboard(){ InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE

Android 监听软键盘状态的实例详解

Android 监听软键盘状态的实例详解 近日遇到要检测软键盘是否显示或隐藏的问题,搜了一下网上,最后找到一个很简单的,记录一下. activityRoot是activity的根view,就是xml里面的第一个view,给它设置一个id. final View activityRootView = findViewById(R.id.activityRoot); activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(ne

qt android 软键盘隐藏 软键盘区域出现黑块

问题描述 qt android 软键盘隐藏 软键盘区域出现黑块 Qt5.4版本,android测试遭遇软件盘问题.设置android:windowSoftInputMode 为"adjustResize",当键盘隐藏时屏幕出现短暂黑块.改为"adjustPan"又会遮住部分输入框,获取Qt.InputMethod.keyboardRectangle.height,返回总是0.求大神指点. 解决方案 http://blog.csdn.net/h7870181/arti

android软键盘影响布局问题

问题描述 android软键盘影响布局问题 大布局整体为,上面是一个搜索edittext,然后有一个banner,下面是一个scrollview,scrollview里面有一个imageview,imageview下面是gridview.(别问我为什么这样) 问题:我点击edittext,输入文字后,在点击搜索跳转页面时,scrollview里面的imageview会自动隐藏,当你返回搜索页面时,滑动scrollview才能滑出来.如果不搜索,直接跳转其他页面,就正常.哪位大神帮忙解释一下 解决

Android软键盘遮挡的四种完美解决方案_Android

一.问题概述 在编辑框输入内容时会弹出软键盘,而手机屏幕区域有限往往会遮住输入界面,我们先看一下问题效果图: 输入用户名和密码时,系统会弹出键盘,造成系统键盘会挡住文本框的问题,如图所示: 输入密码时输入框被系统键盘遮挡了,大大降低了用户操作体验,这就是开发中非常常见的软键盘遮挡的问题,该如何解决? 二.简单解决方案 方法一 在你的activity中的oncreate中setContentView之前写上这个代码 getWindow().setSoftInputMode(WindowManage