`

Android 输入法键盘和activity页面遮挡问题解决

 
阅读更多

本文主要介绍Android中如何解决输入法键盘和activity页面遮挡的问题

 

总结:

不希望遮挡设置activity属性android:windowSoftInputMode="adjustPan"

希望动态调整高度android:windowSoftInputMode="adjustResize"

 

问题:

我原来的问题是,对于腾讯微博的OAuth验证webView,弹出软键盘后,输入框上移就看不到输入框了,后发现Webview放到了ScrollView中,将ScrollView改为LinearLayout问题解决了,不会在弹出软键盘后大幅滚动。不过下面还是详细介绍下软键盘和activity页面遮挡的问题。

 

详细:

通常情况下如果我们在一个输入框输入内容,输入法键盘弹出时,activity自动设置高度,相当于在activity向上滚动了添加了输入法键盘的高度。但有时可能淹没当前的输入框,如果希望输入法键盘弹出时不自动向上挤压activity,在activty中设置属性android:windowSoftInputMode="adjustPan"即可,如下:

<activity android:name="testActivity"
	  android:windowSoftInputMode="adjustPan">

设置属性为android:windowSoftInputMode="adjustResize"即可自动调整高度。

属性stateVisible表示默认显示输入法键盘,其他属性见:android:windowSoftInputMode

 

adjustPan同样存在问题,即可能需要关闭软键盘,定位被挡住的输入框,我希望的是介于adjustPan和adjustResize之间的解决方案,即软键盘会对activity有一定挤压,但是焦点所在输入框始终会显示在屏幕上,有会的朋友欢迎留言分享,个人觉得可能的解决方案是new一个LinearLayout,重写其中的

protected void onSizeChanged(int w, int h, int oldw, int oldh)

方法,使得h参数动态变化达到效果,但较耗时,暂不想尝试了。

 

关于软键盘更多属性请参考

http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft

 

 

分享到:
评论

相关推荐

    android 布局被输入法遮挡的解决办法

    在Android开发过程中,一个常见的问题是在...总之,解决Android布局被输入法遮挡的问题,需要根据具体应用和用户体验来选择合适的方法。通过上述策略的组合运用,可以有效避免或缓解这一问题,提供更好的用户交互体验。

    解决安卓嵌套H5软键盘遮挡问题以及导航栏遮挡问题

    ### 解决安卓嵌套H5软键盘遮挡问题及导航栏遮挡问题 ...通过以上的方法,我们可以有效地解决安卓嵌套H5中软键盘遮挡输入框以及页面被华为、小米等底部导航栏遮挡的问题,从而提升用户体验和应用的整体质量。

    Android输入法显示与隐藏的对布局的影响

    总的来说,处理Android输入法显示与隐藏对布局的影响,需要综合运用`InputMethodManager`、`windowSoftInputMode`以及键盘监听等技术。理解这些机制并灵活运用,能够提升应用的用户体验,避免因键盘遮挡问题导致的...

    解决在在Edittext输入的时候,输入框被软键盘遮挡部分内容的问题

    解决这个问题的一种方法是改变Activity的窗口属性,使其在软键盘弹出时自动适应。 1. **设置Activity的android:windowSoftInputMode**:在AndroidManifest.xml中,针对需要处理软键盘的Activity,添加`android:...

    5种方法完美解决android软键盘挡住输入框方法详解

    在Android应用开发中,经常会遇到一个问题,即当用户在输入框中输入时,弹出的软键盘会遮挡部分屏幕内容,尤其是对于登录或注册等需要填写多项信息的界面,这种情况严重影响了用户体验。为了解决这个问题,Android...

    Android软键盘与聊天页面底部布局之间优雅地切换

    本文将深入探讨如何在Android中实现软键盘与聊天页面底部布局之间的优雅切换,以提供顺畅且舒适的用户交互。 首先,我们需要理解Android软键盘对布局的影响。当用户点击输入框时,软键盘通常会覆盖屏幕底部的部分...

    Android-Android-app解决键盘遮挡注册或登录按钮

    在Android系统中,当焦点在EditText控件上时,输入法键盘会自动弹出。由于Android设备屏幕尺寸多样,键盘弹出后可能导致布局被推移,从而使底部的按钮消失在视野之外。解决这个问题通常有以下几种方法: 1. 使用...

    Android实现键盘弹出界面上移的实现思路

    activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。 这个属性能影响两件事情:  1.当有焦点产生时,软键盘是隐藏还是显示  2.是否减少活动主窗口大小以便腾出空间...

    android 输入法弹出布局自动上移

    综上所述,实现"android 输入法弹出布局自动上移"的关键在于合理设置"windowSoftInputMode",使用可滚动的布局,以及根据需要进行布局优化和键盘状态监听。通过这些方法,我们可以创建出一个与微信登录界面相似的...

    Android-键盘挡住输入框终极解决办法

    总之,解决Android应用中键盘遮挡输入框的问题需要对Android布局机制有深入理解,结合实际场景灵活运用各种技术手段。无论是调整Activity的输入模式,自定义视图,还是利用第三方库,都有其适用的场景和优势,关键...

    android EditText跟随键盘弹出,背景不会被顶上去

    为了解决这个问题,我们需要实现`EditText`跟随键盘弹出而上移,确保其始终可见。这就是"android EditText跟随键盘弹出,背景不会被顶上去"这个话题的核心。 首先,我们需要理解Android系统的默认行为。当`EditText...

    android 全屏模式下软键盘软键盘不遮挡edittext的例子

    在Android开发中,全屏模式下遇到的一个常见问题是当用户点击EditText输入时,弹出的软键盘会遮挡住部分或全部界面,导致用户无法看到正在编辑的内容。为了解决这个问题,我们可以采用一些策略来调整布局,确保软...

    Android实现输入法弹出时把布局顶上去和登录按钮顶上去的解决方法

    Android 中实现输入法弹出时把布局顶上去和登录按钮顶上去的解决方法,这个解决方法可以解决在输入密码时输入法软键盘把登录按钮遮挡住的问题。 知识点 1:什么是输入法软键盘? 输入法软键盘是 Android 中的一个...

    android解决软件盘遮挡问题

    在Android应用开发中,软键盘弹出导致页面布局被遮挡的问题是一个常见的用户体验问题,特别是在登录页面这样的场景中,用户需要在EditText输入信息时,软键盘弹出可能会遮挡住其他重要的元素,比如密码输入框或者...

    Android优雅的方式解决软键盘遮挡按钮问题

    综上所述,解决Android软键盘遮挡按钮的问题可以通过多种方式实现,具体选择哪种方法取决于应用场景和设计需求。通常,结合使用`ScrollView`和在AndroidManifest.xml中设置`windowSoftInputMode`是最简单且效果良好...

    Android开发软键盘遮挡登陆按钮的完美解决方案

    总之,解决Android软键盘遮挡登录按钮的问题通常涉及调整布局、修改Activity的软输入模式,或者使用第三方库和自定义代码。根据应用的具体需求和设计,选择最适合的解决方案,以提供最佳的用户体验。在实际开发中,...

    Xmarin android完美解决输入法遮住控件

    在Xamarin Android应用开发中,有时会...以上就是如何在Xamarin Android开发中解决输入法遮挡控件的问题,以及如何实现对同一控件不同位置的点击事件处理。通过这些技术,你可以创建更流畅、用户体验更好的应用程序。

    解决Android软键盘弹出覆盖h5页面输入框问题

    在Android平台上,开发H5页面时常遇到一个问题:当用户点击位于页面底部或下方的输入框时,软键盘弹出会遮挡输入框,导致用户体验不佳。这个问题主要涉及到H5页面的布局、Android设备的交互特性以及浏览器的适配。...

    软键盘顶起页面布局

    总的来说,软键盘顶起页面布局是一个常见的Android开发问题,需要开发者根据具体需求和用户体验进行适当的配置和代码调整。通过理解Android的布局机制和系统特性,我们可以创建更加流畅和友好的输入体验。

    Android开发之浅仿QQ聊天UI和键盘控制

    在Android应用开发中,设计一个类似QQ的聊天用户界面...总之,解决软键盘遮挡问题需要综合运用Android的布局机制和事件监听,同时关注性能优化。通过不断实践和调试,开发者可以创建出更符合用户习惯的聊天应用界面。

Global site tag (gtag.js) - Google Analytics