首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Android中隐藏没有焦点的软键盘?

在Android中隐藏没有焦点的软键盘,可以通过以下几种方式实现:

  1. 使用InputMethodManager类:可以通过InputMethodManager类的hideSoftInputFromWindow方法隐藏软键盘。该方法接受两个参数,第一个参数是当前View的WindowToken,可以通过调用View类的getWindowToken方法获取;第二个参数是一个标志位,用于指定隐藏软键盘的行为。示例代码如下:
代码语言:java
复制
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
  1. 使用getWindow方法:可以通过Activity类的getWindow方法获取当前窗口的Window对象,然后调用setSoftInputMode方法设置软键盘的显示模式为SOFT_INPUT_STATE_ALWAYS_HIDDEN。示例代码如下:
代码语言:java
复制
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
  1. 使用EditText的clearFocus方法:可以通过调用EditText类的clearFocus方法清除EditText的焦点,从而隐藏软键盘。示例代码如下:
代码语言:java
复制
editText.clearFocus();

这些方法可以根据具体的场景和需求选择使用。隐藏软键盘的常见应用场景包括:当用户点击屏幕其他区域时隐藏软键盘、当页面加载完成后隐藏软键盘等。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发软键盘显示和隐藏

而很多关键逻辑代码,都是在 InputMethodManagerService 实现。 特别说明:本文所有分析源码,都是基于 Android 26 源码。...2、第一个参数,必须是可获取焦点,并且当前已经获取到焦点。 EditText 默认是允许获取焦点,但是假如布局,存在多个可获取焦点控件,就需要提前让我们传递进去 View 获取到焦点。...2.3 隐藏软键盘 虽然 showSoftInput() 方法是有效,但是想要隐藏软键盘,就没有提供对应 hideSoftInput() 方法,但是却有一个 hideSoftInputFromWindow...而第二个参数,就是隐藏软键盘标志位,如果没有特殊要求的话,直接传递 0 就好了。...2.4 切换键盘弹出和隐藏 在 InputMethodManager ,还提供了一个 toggleSoftInput() 方法,如同它名字一样,它可以让软键盘在显示和隐藏之间切换。 ?

2.5K10

Android UI开发中所遇到各种坑

1.软键盘隐藏问题 问题描述:Activity按下返回调用finish()方法后,界面已经销毁,但是软键盘依然还留在屏幕上,这让当前正在显示Activity没有输入框完全没法看,非常严重视觉影响。...还尝试过用基类找到所有edittext然后让它们失去焦点隐藏软键盘。...,因为onDestroy()之前还有两个生命周期方法,像上述隐藏软键盘方法有个getCurrentFocus(),在onDestroy()之前肯定得不到正确获取当前焦点那个控件了。...所以在onPasue()方法里隐藏软键盘就有效,在onDestroy()方法里不管用任何方法都是无效。...注意点:用这个隐藏软键盘方法,最好做为空判断,否则有可能会出现空指针异常,当前界面没有控件获取焦点时,则getCurrentFocus()这个方法得到是一个null.

1.3K20

Android 软键盘那些事

这个属性能影响两件事情: 【一】当有焦点产生时,软键盘隐藏还是显示 【二】是否减少活动主窗口大小以便腾出空间放软键盘设置必须是下面列表一个值,或一个”state…”值加一个”adjust…”...】adjustPan:当前窗口内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容部分(软键盘会遮挡屏幕) android:windowSoftInputMode 活动主窗口如何与包含屏幕上软键盘窗...这个属性设置将会影响两件事情: 1> 软键盘状态——是否它是隐藏或显示——当活动(Activity)成为用户关注焦点时。...软键盘状态(是否它是隐藏或可见)没有被指定。系统将选择一个合适状态或依赖于主题设置。...故而,我建议我们配置,统一使用如下设置: android:windowSoftInputMode=" stateAlwaysHidden | adjustPan "

1.9K10

实现Android键盘中英文适配

“1234567890....【A】stateUnspecified:软键盘状态并没有指定,系统将选择一个合适状态或依赖于主题设置 【B】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个...activity里状态,无论是隐藏还是显示 【C】stateHidden:用户选择activity时,软键盘总是被隐藏 【D】stateAlwaysHidden:当该Activity主窗口获取焦点时...,软键盘也总是被隐藏 【E】stateVisible:软键盘通常是可见 【F】stateAlwaysVisible:用户选择activity时,软键盘总是显示状态 【G】adjustUnspecified...:默认设置,通常由系统自行决定是隐藏还是显示 【H】adjustResize:该Activity总是调整屏幕大小以便留出软键盘空间 【I】adjustPan:当前窗口内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容部分

2.2K10

Android笔记:软键盘弹出遮盖原来界面的布局控件

); 2.直接在项目的MainFest.xml该Activity设置: <activity android:name="com.drain.main.LoginControlActivity...windowSoftInputMode各值含义: 【A】stateUnspecified:软键盘状态并没有指定,系统将选择一个合适状态或依赖于主题设置   【B】stateUnchanged...:当这个activity出现时,软键盘将一直保持在上一个activity里状态,无论是隐藏还是显示   【C】stateHidden:用户选择activity时,软键盘总是被隐藏   【D】stateAlwaysHidden...:当该Activity主窗口获取焦点时,软键盘也总是被隐藏   【E】stateVisible:软键盘通常是可见   【F】stateAlwaysVisible:用户选择activity时,软键盘总是显示状态...:当前窗口内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容部分

1K20

android基础

这个属性能影响两件事情: 【一】当有焦点产生时,软键盘隐藏还是显示 【二】是否减少活动主窗口大小以便腾出空间放软键盘设置必须是下面列表一个值,或一个”state…”值加一个”adjust…”...”和”adjustUnspecified”以外)将覆盖在主题中设置值 各值含义: 【A】stateUnspecified:软键盘状态并没有指定,系统将选择一个合适状态或依赖于主题设置 【B】stateUnchanged...:当这个activity出现时,软键盘将一直保持在上一个activity里状态,无论是隐藏还是显示 【C】stateHidden:用户选择activity时,软键盘总是被隐藏 【D】stateAlwaysHidden...:当该Activity主窗口获取焦点时,软键盘也总是被隐藏 【E】stateVisible:软键盘通常是可见 【F】stateAlwaysVisible:用户选择activity时,软键盘总是显示状态...【G】adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示 【H】adjustResize:该Activity总是调整屏幕大小以便留出软键盘空间 【I】adjustPan

76220

Android视图焦点Focus详细介绍

在非触摸屏设备接收事件和处理响应控件是具有焦点(Focused)控件。一个窗口中一个时间内只能有一个具有焦点控件。...在早期具有滚轮设备android系统以及现在智能TV电视应用中视图焦点控制就非常重要了。...ViewGroup没有焦点并不代表其子视图也没有焦点,这里没有父子制约关系。 任何时候一个窗口内都只有一个视图具有焦点,或者所有视图都无焦点。 并不是所有视图都可以获取焦点。...如果都没有焦点视图时则返回null public View findFocus() 下面的方法是ViewGroup方法,获取直接焦点子视图,也就是返回mFocued数据成员。...这里一个特殊例子就是TextView即使设置了FocuableInTochMode,也没有用,因为在构造函数TextView自己构造函数会在基类基础上再次判断是否设置了Focuable属性,如果没有设置则即使上面设置

2.4K20

Android开发常用知识点

在非EditText控件找一个,设置成 android:focusable="true" android:focusableInTouchMode="true" 软键盘不遮挡 解决Android软键盘在全屏下设置...软键盘状态(是否它是隐藏或可见)没有被指定。系统将选择一个合适状态或依赖于主题设置。...stateHidden 当用户选择该Activity时,软键盘隐藏——也就是说,当用户确定导航到该Activity时,不管他离开Activity软键盘是可见还是隐藏都会被隐藏,不过当用户离开一个...stateAlwaysHidden 当该Activity主窗口获取焦点时,软键盘总是被隐藏,不管是确认导航到该Activity还是Activity被覆盖后显示出来。...adjustUnspecified 这个是软件盘行为默认设置。它不被指定是否该Activity主窗口调整大小以便留出软键盘空间,或是否窗口上内容得到屏幕上当前焦点是可见

2.5K10

EditText与仿钉钉搜索功能

需求:   仿钉钉通讯录搜索,点击搜索框后,跳页面,直接让输入框获取焦点并且弹出软键盘,当用户输入内容后,点击软键盘搜索,隐藏软键盘并且显示列表。...总结需求如下: 进入页面后输入框获取焦点并且默认打开软键盘 修改软键盘的确定键为搜索按钮,并且监听搜素按钮 搜索后隐藏软键盘,刷新数据 效果图: ?...(Context.INPUT_METHOD_SERVICE); inputManager.showSoftInput(et_content, 0); 修改软键盘按钮 android:imeOptions...="actionSearch" 监听软键盘搜索按钮 @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent...EditorInfo.IME_ACTION_SEARCH: startSearch(); break; } return false; } 隐藏软键盘

93730

自适应软键盘Dialog以及监听软键盘弹起

我们知道,在Activity如果要让布局不被软键盘遮挡,方法一般是在清单文件配置windowSoftInputMode属性, windowSoftInputMode是Android1.5以后一个新特性...,软键盘将一直保持在上一个activity里状态,无论是隐藏还是显示 stateHidden:用户选择activity时,软键盘总是被隐藏 stateAlwaysHidden:当该Activity主窗口获取焦点时...,通常由系统自行决定是隐藏还是显示 adjustResize:该Activity总是调整屏幕大小以便留出软键盘空间 adjustPan:当前窗口内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容部分...毕竟我们没有清单文件来配置Dialog属性。其实,在清单配置属性本质也是告诉当前界面对软键盘这种情况处理。...windowSoftInputMode属性如果在清单文件配置的话是这样写android:windowSoftInputMode="stateHidden|adjustPan" 其实在清单文件某些配置

3.3K30

Android 底部按钮被软键盘顶起问题解决

" /> stateHidden 状态隐藏,如果我们设置了这个属性,键盘状态就一定是隐藏,不管上个界面是什么状态,...也不管当前界面有没有输入需求,就是不显示软键盘。...如果界面中有可滑动控件,显示效果跟 adjustUnspecified 显示效果一样;如果界面没有可滑动控件,软键盘可能会盖住一些控件(布局位置不会发生变化,可能获取了焦点控件被软键盘盖住)。...如果界面没有可滑动控件,显示效果和 adjustUnspecified 效果一样;如果界面有可滑动控件,在软键盘显示时候,可能会有一些内容显示不出来。...setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN) } } 资料借鉴 AndroidActivityandroid

1.9K20

Ionic3学习笔记(九)关于 Android软键盘弹出后界面被压缩问题

软键盘弹出后,Android tabs 移到了软键盘上面,再仔细一看,整个界面都被压扁了,输入框也不知道去哪儿了。...stateUnspecified 未指定软键盘状态,系统将自动选择一个合适状态或依赖于主题中设置。 stateUnchanged 当前界面的软键盘状态取决于上一个界面的软键盘状态。...stateHidden 用户选择 Activity 时,软键盘总是被隐藏。 stateAlwaysHidden 当该 Activity 主窗口有输入需求时,软键盘总是被隐藏。...adjustUnspecified 未指定软键盘与界面内容之间显示关系。 adjustResize 该 Activity 总是调整屏幕大小以便留出软键盘空间。...adjustPan 当前窗口内容将自动移动以便当前焦点从不被键盘覆盖和用户总能看到输入内容。

94020

Android使用Activity实现简单可输入对话框

这里效果可以细分为四点: 点击底部按钮之后会弹出对话框,对话框在布局底部; 对话框中有输入框EditText,可以输入内容; 对话框弹出后EditText会自动获取焦点,弹出软键盘软键盘会把对话框顶上去...下面介绍两种方法: 3.1、使用InputMethodManager类显示软键盘 我们平时要让某个EditText获得焦点自动弹出软键盘可以这样写: InputMethodManager inputManager...其实软键盘没有自动弹出就是它搞鬼,它表示一般情况下软键盘都是隐藏。我们改成另外一个属性:stateVisible,它表示软键盘通常是可见。 再来运行一下,软键盘就如期而至了。...4、后记 我们在需求分析中提到效果已经实现完毕。后来我还想过给对话框增加自定义动画效果,但是退出时动画始终没有设置成功,所以如果有读者实现了,欢迎交流学习。...5、参考文章 android:windowSoftInputMode属性详解 彻底搞定Android开发软键盘常见问题

2.7K20

Android富文本开发

何在ViewGroup添加view,删除view时给相应view和受影响其他view添加动画,不太容易做。...有没有办法添加一定过度效果,让实现效果显得圆滑呢? LayoutTransition简单介绍 LayoutTransition类实际上Android系统一个实用工具类。...,其他输入框也不获取焦点,ps非直接父布局没有效果) android:windowSoftInputMode="stateAlwaysHidden" (效果:软键盘不弹出,光标显示在第一个输入框) 需求...="true" (效果:软键盘不弹出,光标不显示,其他输入框也不获取焦点,ps非直接父布局没有效果) 在父布局最顶部添加一个高度为0EditText,抢了焦点但不展示; 软键盘遮挡界面的问题 当界面中有输入框...stateAlwaysHidden-总是隐藏状态:当设置该状态时,软键盘总是被隐藏,和stateHidden不同是,当我们跳转到下个界面,如果下个页面的软键盘是显示,而我们再次回来时候,软键盘就会隐藏起来

8.4K20
领券