`

Android中软键盘弹出时底部菜单上移问题

 
阅读更多

 当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入。
解决办法:
方法一:在你的activity中的oncreate中setContentView之前写上这个代码getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

 

我的布局是RelativeLayout,底部菜单用了android:layout_alignParentBottom="true";只有用方法一有效;

int mode=WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN;
        getWindow().setSoftInputMode(mode);

 


方法二:在项目的AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="stateVisible|adjustResize",这样会让屏幕整体上移。如果加上的是
                android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。
方法三:把顶级的layout替换成ScrollView,或者说在顶级的Layout上面再加一层ScrollView的封装。这样就会把软键盘和输入框一起滚动了,软键盘会一直处于底部。

注:方法一和二应该是同一种方法,不过一个是在代码里实现一个是在xml文件里实现。可能会应为1.5和之前的版本不支持该方法。但是方法三是肯定没有问题的。


文主要介绍Android中如何解决输入法键盘和activity页面遮挡的问题。
 
总结:
不希望遮挡设置activity属性android:windowSoftInputMode="adjustPan"
希望动态调整高度android:windowSoftInputMode="adjustResize"光标

分享到:
评论
1 楼 wwwjiandan 2017-05-31  
我现在遇到的问题是将Activity设置为非全屏,且android:windowSoftInputMode="adjustResize",这样设置的原因是希望用户在网页中的输入框输入文字时输入框不被软键盘挡住,这时候带来的问题就是App的底部菜单会被推上去,很别扭!

相关推荐

    Android解决软键盘弹起时遮住登录按钮的问题

    本文将详细介绍如何解决这一问题,实现软键盘弹出时页面整体上移,以及点击空白区域收起软键盘的效果,并且将11位手机号格式化为xxx xxxx xxxx的显示形式。 首先,要让页面整体上移,我们需要在`AndroidManifest....

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

    在本例中,Flex布局使输入框位于可视区底部,使得软键盘弹出时无法上移到可视区内。 知识点三:解决软键盘弹出覆盖输入框问题的方法 解决软键盘弹出覆盖输入框问题有多种方法,以下是一些常见的解决方法: 1. ...

    Android 软键盘弹出时把原来布局顶上去的解决方法

    在Android应用开发中,经常会遇到一个问题,即当用户在输入框中点击触发软键盘弹出时,原本在屏幕下方的布局会被键盘顶上去,导致部分界面内容无法查看。为了解决这个问题,Android提供了`windowSoftInputMode`属性...

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

    在移动应用开发过程中,尤其是在处理H5页面时,经常会遇到一个让人头疼的问题:软键盘弹出后遮挡了输入框或者页面被华为、小米等手机底部的导航栏遮挡。这个问题对于用户体验的影响非常大,因此寻找一个合适的解决...

    监听软键盘弹出改变布局demo

    在Android开发中,软键盘的弹出与隐藏会影响到应用程序界面的布局,特别是在处理输入框时,用户可能会遇到因软键盘弹出导致底部元素被遮挡的问题。本示例"监听软键盘弹出改变布局demo"旨在解决这一问题,提供了一种...

    android 调用软键盘

    软键盘弹出时,底部的布局可能会被遮挡,这时可以使用ScrollView或NestedScrollView作为根布局,以实现内容滚动。同时,合理设置EditText的`android:imeOptions`和`android:inputType`属性,能优化输入体验,比如...

    Android Dialog中软键盘的显示与隐藏的示例

    为了解决这个问题,我们可以利用Dialog的`setOnShowListener()`方法,设置一个监听器,当Dialog显示完成时再调用显示软键盘的方法。这样可以确保软键盘在Dialog完全呈现后才显示。例如: ```java dialog....

    Android 实现软键盘与EditText的交互.zip

    这个压缩包文件"Android 实现软键盘与EditText的交互.zip"包含了关于如何处理Android应用中软键盘与EditText之间的交互问题的资源。主要关注的是如何管理软键盘的显示与隐藏,以及在用户操作软键盘时如何调整布局。 ...

    解决react-native软键盘弹出挡住输入框的问题

    解决 React Native 软键盘弹出挡住输入框的问题 React Native 是一个基于 JavaScript 和 React 的框架,用于开发跨平台的移动应用程序。然而,在 React Native 中,软键盘的弹出可能会挡住输入框,导致用户无法输入...

    WPF中软键盘调用

    标题"**WPF中软键盘调用**"涉及的核心技术就是如何在WPF应用中实现软键盘的显示与隐藏。描述中提到的“1 wpf 中显示、隐藏虚拟键盘的实现;2 基本功能已实现,具体还要根据实际完善;3 主要为了测试使用”意味着这个...

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

    本文将深入探讨Android中软键盘弹出、隐藏以及挤压界面的各种问题,并提供相应的解决方案。 首先,横屏模式下,当用户在EditText或SearchView等组件中输入时,全键盘可能会遮挡屏幕。为了防止这种情况,可以为这些...

    Android 软键盘和emoji表情切换方案,和微信几乎一样的体验

    在Android中,应用程序通过EditText组件来接收用户输入,当EditText获得焦点时,系统会自动弹出软键盘。然而,系统默认的软键盘并不包含emoji表情,因此我们需要自定义输入法键盘。 1. **创建自定义输入法键盘** -...

    android解决软件盘遮挡问题

    如`android-floating-action-button`库提供了一种方法,当键盘弹出时,可以使FloatingActionButton自动上移,避免被键盘遮挡。 6. **使用Fragment**: 将登录界面放在Fragment中,可以更方便地控制键盘弹出时的...

    中软国际招聘ANDROID

    根据给定文件的信息,我们可以提炼出以下几个重要的知识点: ### 一、中软国际的企业背景 中软国际是一家大型信息技术服务提供商,在全球范围内提供包括软件开发、系统集成、外包服务等在内的全方位信息技术解决...

    C#中软键盘程序

    在IT领域,编程语言是构建各种应用程序的基础,而C#是一种广泛应用的面向对象的语言,尤其在Windows平台上。本文将深入探讨如何使用C#编写屏幕软键盘程序,以及它的工作原理和可能的应用场景。 屏幕软键盘,又称...

    Android编程中软键盘基本用法分析

    本文将深入探讨Android编程中软键盘的基本用法,包括如何显示、隐藏以及处理软键盘与界面交互的问题。 首先,要操作软键盘,我们需要获取到`InputMethodManager`这个系统服务。`InputMethodManager`是Android系统...

    应用源码之调用中的软键盘.zip

    开发者可以通过设置Activity的`android:windowSoftInputMode`属性来控制键盘弹出时的行为,如`adjustPan`(内容区域平移以适应键盘)和`adjustResize`(Activity大小调整以适应键盘空间)。 3. **Fragment与软键盘...

    Android应用源码之调用中的软键盘.zip

    在Android应用开发中,与用户交互是至关重要的,而软键盘作为输入的主要工具,它的调用和管理是开发者经常遇到的问题。本资料“Android应用源码之调用中的软键盘.zip”提供了一些关于如何在Android应用程序中控制和...

Global site tag (gtag.js) - Google Analytics