解决布局北键盘顶的难题

注册文件里面写上这句代码就ok了

!!!
<activity
android:name=".activity.HomeActivity"android:windowSoftInputMode="adjustNothing" ></activity>

可能网上会有很多答案,但是经本人试验,这种靠谱。也许不同的情况下有不同的解决吧!!

windowSoftInputMode属性设置值说明。

<activity
android:windowSoftInputMode=["stateUnspecified",

"stateUnchanged",
"stateHidden",

"stateAlwaysHidden",
"stateVisible",

"stateAlwaysVisible",
"adjustUnspecified",

"adjustResize",
" …… >

</activity>

attributes:

android:windowSoftInputMode

活动的主窗口如何与包含屏幕上的软键盘窗口交互。这个属性的设置将会影响两件事情7
S7 U+ S! p7 s( U) n: t: m& N
:

1>   
软键盘的状态——是否它是隐藏或显示——当活动5 w$ r- U9 i" h. O‘ M"
M
(Activity)成为用户关注的焦点。

2>   
活动的主窗口调整——是否减少活动主窗口大小以便腾出空间放软键盘或是否当活动窗口的部分被软键盘覆盖时它的内容的当前焦点是可见的。

它的设置必须是下面列表中的一个值,或一个
”state…”值加一个+ s. Z" m5 u: {; k; B7 v4
Q
”adjust…”值的组合。在任一组设置多个值——多个
”state…”values,例如&
mdash有未定义的结果。各个值之间用+ H8 v$ Q# ~5 f3 B& `- G8 c$
y
|分开。例如
:
<activity android:windowSoftInputMode="stateVisible|adjustResize" . . .
>

在这设置的值8 A: N! L‘
x0 `: C
(除‘ H0 N" g, w2 W) K  F# y2 l!
c
"stateUnspecified"和
"adjustUnspecified"以外3 ^, p2 E  G: I2 y/
V
)将覆盖在主题中设置的值


































描述

"stateUnspecified"

软键盘的状态
(是否它是隐藏或可见
)没有被指定。系统将选择一个合适的状态或依赖于主题的设置。这个是为了软件盘行为默认的设置。

"stateUnchanged"

软键盘被保持无论它上次是什么状态,是否可见或隐藏,当主窗口出现在前面时。

"stateHidden"

当用户选择该
Activity时,软键盘被隐藏——也就是,当用户确定导航到该#
^* {1 w. C: Y- }
Activity时,而不是返回到它由于离开另一个: }/
N! p( a* M% W. b% m9 b# u
Activity。

"stateAlwaysHidden"

软键盘总是被隐藏的,当该
Activity主窗口获取焦点时。

"stateVisible"

软键盘是可见的,当那个是正常合适的时& d% G. y8 [; G; _:
v
(当用户导航到" s2 I/ J$ s2 w7 J) j6 O& J,
f
Activity主窗口时
)。

"stateAlwaysVisible"

当用户选择这个6 Z% C  e/ r0 u, M  `7
N  r
Activity时,软键盘是可见的——也就是,也就是,当用户确定导航到该.
m; r6 r% t. `# A4 C0 ^, t; d!
V
Activity时,而不是返回到它由于离开另一个
Activity。

"adjustUnspecified"

它不被指定是否该" H9 b! V3 h5 _& O$ d$ M  B"
V5 j: d
Activity主
窗口调整大小以便留出软键盘的空间,或是否窗口上的内容得到屏幕上当前的焦点是可见的。系统将自动选择这些模式中一种主要依赖于是否窗口的内容有任何布局
视图能够滚动他们的内容。如果有这样的一个视图,这个窗口将调整大小,这样的假设可以使滚动窗口的内容在一个较小的区域中可见的。这个是主窗口默认的行为
设置。

"adjustResize"

该/ M" R: m- W( Z. Q6 d*
A
Activity主窗口总是被调整屏幕的大小以便留出软键盘的空间

"adjustPan"


Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。相反,当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分。这个通常是不期望比调整大小,因为用户可能关闭软键盘以便获得与被覆盖内容的交互操作。

时间: 2024-08-03 05:14:09

解决布局北键盘顶的难题的相关文章

h5移动端常见虚拟键盘顶起底部导航栏解决办法

在h5移动端开发中相信很多朋友跟我一样都会遇到页面底部导航被虚拟键盘顶起的问题,自己在网上找到的解决办法拿出来与大家分享,有不完美之处还望见谅,有更好的解决办法可以贴出来大家一起互相学习!! var oHeight = $(document).height(); //浏览器当前的高度 // 浏览器窗口发生变化时判断 $(window).resize(function(){ if($(document).height() < oHeight){ $('footer').hide(); }else{

virt-manager 解决kvm 不能键盘输入的问题

virt-manager  解决kvm 不能键盘输入的问题

Android实习札记(11)---妙用include解决布局重用问题

Android实习札记(11)---妙用include解决布局重用问题 --转载请注明出处:coder-pig 如果你已经知道include是什么,只是想知道怎么用,使用示例如下: ①布局文件引入layout  <include android:id="@+id/topbar" android:layout_width="match_parent" android:layout_height="wrap_content" layout=&q

移动端 fixed 固定按钮在屏幕下方,然后按钮被键盘顶上来...顶上来了有没有~

在移动端 H5 页面开发中,我使用了 fixed 固定某个元素在屏幕的最下方, 这时点击输入框,接着非常非常自然地出现了元素被系统键盘顶起来的情况,如下图. 解决方案: 首先,给页面最外层包裹一层 div(相对定位) ,然后页面渲染完成时给 div 的高度等于 body(document.body.clientHeight) 的高度, 接下来再给需要定位在屏幕下方的元素设置绝对定位即可解决问题. css body,html { height : 100%; } #view { width : 1

解决Andriod软键盘出现把原来的布局给顶上去的方法(转)

解决方法,在mainfest.xml中,对那个Activity加: <activityandroid:name=".activity.HomeActivity"Android:windowSoftInputMode="adjustPan|stateHidden"></activity> 就不会把原来Activity的布局给顶上去了. 因为在搜索条中输入文字的时候会弹出软件盘,但是如果不做什么设置的话,软键盘弹出来的同时,会把我下面的tab导航

解决安卓手机键盘弹出时会把背景或百分比定位的布局压缩的问题

做移动端页面时经常遇到以下案例,在有背景的页面上写表单,而且底部为了适应不同手机还得运用绝对定位,因为通常是把容器高度设为了100%,这时在安卓手机上弹窗软键盘时就会把背景图片及其他东西挤压上去,解决方法如下: 在css样式中把大容器定义为fixed布局 .wrap{ position:fixed;left:0;top:0; } 在js中强制把页面的高度覆给他,就相当于自动撑开 var x =document.body.clientWidth; //查询设备的宽度 var y =document

解决移动端 footer fixd 定位被键盘顶起来的方案

直接上代码: $(document).ready(function () { var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 var h=$(window).height(); //获取窗口高度 $(

iOS 如何解决无法将键盘隐藏

问题: 在一个父视图上添加了UITableView以及一个UITextView(UITextView为底部,其余为UITableView的布局).当点击UITextView的时候,响应正常.当结束写入的时候,需要调用[UITextView resignFirstResponder]来隐藏键盘.这就导致,无法收起键盘. 原因: 当点击UITableView的时候,所触发非UITextView的时候,也就是触摸的是UITableView.当手指touch的时候,响应链便开始从视图的顶部往下响应.当它

解决 Android 软键盘挡住输入框的问题

当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入. 下面提供三种解决办法:    方法一:在你的activity中的对应的java文件中oncreate中setContentView之前写上这个代码getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); 该方法是最简单的    方法二:在 项目的Andro