解析android中隐藏与显示软键盘及不自动弹出键盘的实现方法
1、//隐藏软键盘
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
2、//显示软键盘,控件ID可以是EditText,TextView
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).showSoftInput(控件ID, 0);
3、不自动弹出键盘:
带有EditText控件的在第一次显示的时候会自动获得focus,并弹出键盘,如果不想自动弹出键盘,有两种方法:
方法一:在mainfest文件中把对应的activity设置
android:windowSoftInputMode="stateHidden" 或者android:windowSoftInputMode="stateUnchanged"。
方法二:可以在布局中放一个隐藏的TextView,然后在onCreate的时候requsetFocus。
注意TextView不要设置Visiable=gone,否则会失效
,可以在布局中放一个隐藏的TextView,然后在onCreate的时候requsetFocus。
注意TextView不要设置Visiable=gone,否则会失效
<TextView
android:id="@+id/text_notuse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"
/>
TextView textView = (TextView)findViewById(R.id.text_notuse);
textView.requestFocus();
相关推荐
-
Android软键盘挡住输入框的终极解决方案
前言 开发做得久了,总免不了会遇到各种坑. 而在Android开发的路上,『软键盘挡住了输入框』这个坑,可谓是一个旷日持久的巨坑--来来来,我们慢慢看. 入门篇 最基本的情况,如图所示:在页面底部有一个EditText,如果不做任何处理,那么在软键盘弹出的时候,就有可能会挡住EditText. 对于这种情况的处理其实很简单,只需要在AndroidManifest文件中对activity设置:android:windowSoftInputMode的值adjustPan或者adjustResize即
-
详解Android中获取软键盘状态和软键盘高度
详解Android中获取软键盘状态和软键盘高度 应用场景 在Android应用中有时会需要获取软键盘的状态(即软键盘是显示还是隐藏)和软键盘的高度.这里列举了一些可能的应用场景. 场景一 当软键盘显示时,按下返回键应当是收起软键盘,而不是回退到上一个界面,但部分机型在返回键处理上有bug,按下返回键后,虽然软键盘会自动收起,但不会消费返回事件,导致Activity还会收到这次返回事件,执行回退操作,这时就需要判断,如果软键盘刚刚由显示变为隐藏状态,就不执行回退操作. 场景二 当软键盘弹出后,会将
-
Android 软键盘弹出时把原来布局顶上去的解决方法
键盘弹出时,会将布局底部的导航条顶上去. 解决办法: 在mainfest.xml中,在和导航栏相关的activity中加: <activity android:name=".filing.MainActivity" android:windowSoftInputMode="adjustResize|stateHidden" /> windowSoftInputMode 属性解释: 活动的主窗口如何与包含屏幕上的软键盘窗口交互.这个属性的设置将会影响两件事
-
Android 显示和隐藏软键盘的方法(手动)
在Android开发中,经常会有一个需求,做完某项操作后,隐藏键盘,也即让Android中的软键盘不显示.今天,和大家分享如何利用代码来实现对Android的软件盘的隐藏.显示的操作. 1.方法一(如果输入法在窗口上已经显示,则隐藏,反之则显示) InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(0, InputMeth
-
Android软键盘弹出时的界面控制方法
本文实例讲述了Android软键盘弹出时的界面控制方法.分享给大家供大家参考,具体如下: 有时候androidactivity弹出软键盘后布局改变 下面有三种模式可以改变软键盘弹出以后的显示形式 模式一:压缩模式软键盘弹出以后,会压缩原先的大小 我们可以在AndroidManifet.xml中对Activity进行设置.如: android:windowSoftInputMode="stateUnchanged|adjustResize" 模式二:平移模式 软键盘弹出以后,不会压缩原先
-
Android 设置Edittext获取焦点并弹出软键盘
Android 设置Edittext获取焦点并弹出软键盘 /** * EditText获取焦点并显示软键盘 */ public static void showSoftInputFromWindow(Activity activity, EditText editText) { editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); activity.getWind
-
Android中监听软键盘显示状态实现代码
/**监听软键盘状态 * @param activity * @param listener */ public static void addOnSoftKeyBoardVisibleListener(Activity activity, final OnSoftKeyBoardVisibleListener listener) { final View decorView = activity.getWindow().getDecorView(); decorView.getViewTree
-
Android软键盘遮挡的四种完美解决方案
一.问题概述 在编辑框输入内容时会弹出软键盘,而手机屏幕区域有限往往会遮住输入界面,我们先看一下问题效果图: 输入用户名和密码时,系统会弹出键盘,造成系统键盘会挡住文本框的问题,如图所示: 输入密码时输入框被系统键盘遮挡了,大大降低了用户操作体验,这就是开发中非常常见的软键盘遮挡的问题,该如何解决? 二.简单解决方案 方法一 在你的activity中的oncreate中setContentView之前写上这个代码 getWindow().setSoftInputMode(WindowManage
-
解析android中隐藏与显示软键盘及不自动弹出键盘的实现方法
1.//隐藏软键盘 ((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); 2.//显示软键盘,控件ID可以是EditText,TextView ((InputMethodMa
-
Android中FloatingActionButton的显示与隐藏示例
FloatingActionButton简介 FloatingActionButton(FAB) 是Android 5.0 新特性--Material Design 中的一个控件,是一种悬浮的按钮,并且是 ImageView 的子类,因此它具备ImageView的全部属性.一般FloatingActionButton 结合 CoordinatorLayout 使用,即可实现悬浮在任意控件的任意位置. FloatingActionButton使用 本文主要实现的效果:Toolbar和Floatin
-
Android中隐藏状态栏和标题栏的方法汇总(隐藏状态栏、标题栏的五种方法)
方法一: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); // 隐藏状态栏 getWindow().setFlags(WindowManager
-
Android 中隐藏虚拟按键的方法实例代码
下面通过一段代码给大家讲解android 隐藏虚拟按键的方法,废话不多说了,大家多多看看代码和注释吧,具体代码如下所示: /** * 隐藏虚拟按键,并且全屏 */ protected void hideBottomUIMenu() { //隐藏虚拟按键,并且全屏 if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api View v = this.getWindow().getDec
-
Android 中menu同时显示图标和文字的实现
Android 中menu同时显示图标和文字的实现 前言: Activity中的menu条目,在设置其showAsAction="never"时,默认只显示文字title,而不会显示图标icon,可以在Activity中重写onMenuOpened(),通过反射使其图标可见. 实现效果图: // 让菜单同时显示图标和文字 @Override public boolean onMenuOpened(int featureId, Menu menu) { if (menu != null)
-
Android实现背景可滑动登录界面 (不压缩背景弹出键盘)
废话不多说,先看下实现后的效果: 实现思路 看到上边 gif 图的效果,主要列举一下实现过程过程中遇到的难点. 如何使键盘弹出时候不遮挡底部登录布局: 当键盘弹出的时候如何不压缩背景图片或者背景延伸至「屏幕以外」: 从 「 windowSoftInputMode 」 说起 相信大家都清楚,Google 官方提供给开发者控制软键盘显示隐藏的方法不多,「windowSoftInputMode」算是我们可控制的软键盘弹出模式的方法之一.关于其属性的说明Google 官方和网上的教程说了很多,他的属性值
-
Android 中通过ViewDragHelper实现ListView的Item的侧拉划出效果
先来看看,今天要实现的自定义控件效果图: 关于ViewDragHelper的使用,大家可以先看这篇文章ViewDragHelper的使用介绍 实现该自定义控件的大体步骤如下: 1.ViewDragHelper使用的3部曲,初始化ViewDragHelper,传递触摸事件,实现ViewDragHelper.Callback抽象类. 2.需要创建2个直接的子View,分别是前景View和背景View,代表ListView每一项Item的布局的组成,如下所示: 未划出时显示的FrontView: 划出
-
解决vue js IOS H5focus无法自动弹出键盘的问题
IOS不自动弹出键盘,必须手动触发一下focus才行,不能自动调用,所以需要诱导用户点击某个按钮触发focus,最终修改的方法,默认隐藏密码输入框,隐藏不能用v-if或者是v-show,用position:absolute, top:-1000,然后点击输入密码将top改为视窗内,并且调用focus的方法 代码如下,有问题欢迎评论 <template> <div class="pwdpush-box"> <h4 class="enter-pass
-
让Android中RadioGroup不显示在输入法上面的办法
如果你在开发过程中经常使用 RadioGroup,那你是否遇到过下面这种情况 每当你点击EditText弹出输入法时,RadioGroup总是向上移动到输入法的上面. 你可能会想到需要给RadioGroup添加下面这条属性: android:layout_alignParentBottom="true" 但当你打开xml文件时,很尴尬的发现这个属性已经加上了,那要怎么解决这个小bug呢? 其实很简单,只需要在AndroidManifest.xml文件里给当前类的注册信息中添加一个属性:
-
深入解析Android中的事件传递
前言 前段时间工作中遇到了一个问题,即在软键盘弹出后想监听back事件,但是在Activity中重写了对应的onKeyDown函数却怎么也监听不到,经过一阵Google之后才发现需要重写View的dispatchKeyEventPreIme函数才行.当时就觉得这个函数名字很熟悉,仔细思索一番以后才恍然大悟,当初看WMS源码的时候有过这方面的了解,现在却把它忘到了九霄云外,于是决定写这篇文章,权当记录. InputManagerService 首先我们知道,不论是"键盘事件"还是&quo
随机推荐
- PHP 与 js的通信(via ajax,json)
- 使用vue.js实现checkbox的全选和多个的删除功能
- 从最基本的Java工程搭建SpringMVC+SpringDataJPA+Hibernate
- 详解Java中super的几种用法并与this的区别
- js贪吃蛇游戏实现思路和源码
- 在ASP.NET 2.0中操作数据之十九:给编辑和新增界面增加验证控件
- C#创建WCF服务控制台应用程序详解
- ES6新特性之模块Module用法详解
- node.js读取文件到字符串的方法
- Ajax 入门之 GET 与 POST 的不同处详解
- 使用jQuery实现星级评分代码分享
- 分享十五款 jQuery 社交网络分享插件
- Python中的进程分支fork和exec详解
- Android中SparseArray性能优化的使用方法
- Android 文件选择的实现代码
- Python实现SSH远程登陆,并执行命令的方法(分享)
- C#中dotnetcharting的用法实例详解
- spring入门教程之bean的继承与自动装配详解
- Hibernate中Session.get()方法和load()方法的详细比较
- laravel 模型查询按照whereIn排序的示例