2 zhenglingkun zhenglingkun 于 2013.01.11 14:40 提问

EditText与手机键盘之间的操作问题

在一个布局中我用一个EditText,下面也有布局,当我点击输入时,弹出虚拟键盘时,EditText下面的布局也能显示出来,在网上找了找,大致有两种解决方案,第一种是在定义Activity时设置职下属性:

<activity  
   android:name="ViewActivity"  
   android:label="@string/app_name"  
   android:windowSoftInputMode="adjustUnspecified|stateHidden"   
   android:configChanges="orientation|keyboardHidden">  
</activity>

另一种就是在EditText的下面加上一个ScrollView。
我用第一种方法没有解决我的问题,就用了第二个,问题解决了,只是不明白什么原理,哪位大牛能帮我解释一下,这是为什么?
下面是我解决的方法,只是其中一部分,整体是一个相对布局,里面有一个EditText控件,还有EditText下面的三个按钮,只是在EditText和三个按钮之间加了一个ScrollView:

<EditText
        android:id="@+id/wb_sendMsg_editText1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@id/wb_sendMsg_button01"
        android:layout_below="@id/wb_sendMsg_title"
        android:layout_centerVertical="true"
        android:background="@color/white"
        android:gravity="top"
        android:hint="@string/text_hint" >
    </EditText>

    <ScrollView
        android:id="@+id/wb_sendMsg_scrollView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >
    </ScrollView>

哪位大神帮忙解释一下,万分感谢!

1个回答

curie_87
curie_87   2013.01.15 14:29

这两个方法是不一样的。第一种方法是在activity中添加一些属性。第二种方法是设置了布局。
你想要安装键盘后,把编辑框和底部layout显示出来吗?
你可以把你解决这个问题时使用的解决方案更新到问题中。基本上,scroll view会占据额外空间,直到视图能适合有限的landscape。

zhenglingkun
zhenglingkun 我是要把编辑框和底部layout显示出来,第一种方法没起到作用,第二个方法倒是可以,不知道怎么回事
5 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
ListView嵌套EditText导致软键盘闪退的问题
在ListView中,每次弹出软键盘后就会重新调用getView()方法,导致EditText失去焦点。 解决办法:在getView()方法中添加监听器: editText.setOnTouchListener(new OnTouchListener() {             @Override             public boolean onTouch(View
Android软键盘遮挡问题解决
在开发登录界面时,在点击某个EditText准备输入时,弹出的软键盘遮挡了按钮或者下面的输入框,在完成这个文本框的输入后,想要继续下面的操作,需要先隐藏软键盘。这会影响用户操作的流畅感,所以需要解决。在尝试了网上的几种处理方法后,最终选择了一种比较满意的方式。下面先给一个图,来讲解下问题所在
EditText嵌在ListView中导致安卓键盘闪退的问题
今天遇到一个诡异的问题,在锤子和三星手机上出现了点击EditText结果键盘闪了一下又退下了,其他手机上却没有这个问题,搜了很久也没有找到,后来各种变换搜索词终于在StackOverFlow上找到了答案,在这里分享给大家。
Android——华为虚拟键盘EditText被顶起
bug描述:EditText获得焦点后键盘被吊起,但是EditText没有在虚拟键盘的顶端,而是被顶起了一个虚拟键盘的高度如下图所示:解决办法:在布局文件中写成EditText被双ViewGroup包裹例如: <ReleateLayout> <ReleateLayout> <EditText/> </ReleateLayout> </ReleateLayout>在<A
解决 侵入式下 EditText位于屏幕底部时会被软键盘覆盖的问题
转自:http://blog.csdn.net/huangxiaoguo1/article/details/53081229?locationNum=3&fps=1 源码地址:http://download.csdn.net/detail/guojiel/9587855 解决 侵入式下  EditText位于屏幕底部时会被软键盘覆盖的问题 全屏模式下,即使将activity的wi
EditText软键盘挡住输入框或者顶出导航栏,解决方案
EditText如果设置不好,要么是软键盘挡住输入框,要么是内容上顶覆盖掉了导航栏。完美解决方案: 在manifest 文件设置 : android:windowSoftInputMode=”stateVisible|adjustPan” 在layout文件中设置 : android:fitsSystemWindows=”true”引用 在oncreate里设置: getWin...
Android EditText被软键盘遮盖
问题:EditText 第二次点击时,弹出来的软键盘会把EditText遮盖掉。   描述:设置了一个EditText,在靠近屏幕的底部,第一次点击EditText,弹起软键盘, 这时候EditText会跟随软键盘上升,这时再次手动隐藏软键盘,然后再次点击EditText, 软键盘弹出后就遮挡了EditText。 尝试了好多方法 在清单文件中对应的activity设置andro
五种方法专治各种EditText和软键盘的问题
很抱歉,公司上传不了图片,下面的代码直接拷贝到xml文件和.java文件里即可运行看效果。 方法一:不需要设置Activity的输入法模式,底部没有悬浮的按钮,核心思想是底部有一个view,平时是gone的,弹出软键盘之后,变为visible,这样输入框就有足够的空间上下滚动了。缺点:view的高度必须和软键盘的高度一致才完美,我这里简单设为100dp,其实是不完美的。推荐指数:1个星。packa
Android EditText和软键盘绑定的问题
Android 中有很多点击EditText弹出软键盘,并把软键盘的值显示在Editview中,但是这个过程也许会遇到比较坑人的问题。 以下是本人遇到的。 点击人物头像,弹出聊天的popwindow,点击编辑框弹出软键盘,在点击隐藏软键盘,在点击时软键盘不弹出了。根据网上的资料什么isactive()的判断,监听软键盘弹出和隐藏时View的高度几种方法几乎都没用什么效果,那怎么办了,只有霸王硬
EditText焦点问题:进入app之后,就弹出软键盘
现象进入app之后,首界面的EditText就获取焦点。把软键盘弹了出来解决方案第一种:父控件添加属性      在EditText的外层布局,添加如下代码。给EditText添加没有效果android:focusable="true" android:focusableInTouchMode="true"示例如下: <RelativeLayout an