在android中打开软键盘时调整布局

时间:2012-02-20 07:12:25

标签: android view android-softkeyboard

我有一个活动,其中视图就像一个表单,用户可以在其中输入详细信息,在底部有两个按钮“保存”和“取消”。表单有许多编辑框。 所以我采用了相对布局并将所有这些编辑框放入其中,然后将相对布局放在滚动视图中。我采取了另一种相对布局来添加“保存”和“取消”按钮。     最后,我将滚动视图和相对布局(有按钮)放在另一个相对布局中,这是我活动的主视图。

我的问题是,当我点击任何一个编辑框时,键盘会出现并隐藏按钮(保存并取消)。

我想让按钮显示在键盘上方(当键盘打开时),就像在“联系人”应用程序的编辑联系活动中一样。

我正在使用android:windowSoftInputMode =“adjustPan | adjustResize”进行我的活动,但没有用。 我已经经历了很多有关此问题的堆栈溢出问题,但我无法做到这一点。

如何使用我的代码执行此操作?

2 个答案:

答案 0 :(得分:1)

编辑联系人活动保存按钮中的

添加到底部和滚动视图外部的布局中。

您可以做什么,使您的保存和取消按钮始终可见,天气,软键盘是否可见。使父布局为relativelayout,在此布局中添加两个视图,一个滚动视图,以及其他具有按钮的relativelayout。让相对布局属性layout_width=fill_parentlayout_height=wrap_content以及align_parent_bottom=true和滚动视图的layout_width=fill_parentlayout_height=fill_parentlavout_above=@+id/rlButtons在ScrollView中添加RelativeLayout拥有所有的editTexts。

答案 1 :(得分:0)

我得到了解决方案。   我的父布局是相对布局。在这个布局中,我添加了一个滚动视图和一个相对布局。在滚动视图中,我添加了一个包含所有编辑文本的相对布局。在相对布局中,我添加了保存和取消按钮。我设置滚动视图权重= 1。 对于我的活动,我设置了android:windowSoftInputMode =“adjustResize”。