0

我有一个 TabActivity,它在屏幕底部有标签。我的第一个选项卡包含一个活动,该活动由屏幕顶部的固定标题布局和它下方的 ScrollView 组成,其中包含几个 EditText 控件。ScrollView 在标题栏和底部选项卡之间滚动其内容很好,当点击 EditText 并出现软键盘时会出现问题。我知道要在键盘出现时控制视图的行为,我需要使用windowSoftInputMode清单 XML 文件中的属性。但是我尝试了以下两种设置:

adjustResize- 为 ScrollView 提供正确的功能,并且标题布局保持固定在屏幕顶部。然而,标签栏控件被推到键盘顶部。

adjustPan- 标签栏控件保留在键盘下方的屏幕底部(这是我想要的),但其他视图由键盘向上推,这意味着标题布局被推离屏幕。

看来我需要两种设置的特性,但它们不能一起使用。我听说过该设置adjustNothing,但如果我尝试这样做,我的项目将无法构建,因为它无法识别此设置。我想我需要我的标签主机活动,adjustPan但我的内容活动,adjustResize但似乎你不能将两者结合起来,因为它是优先的标签主机活动。

非常感谢任何帮助。

4

1 回答 1

0

在没有任何直接解决方案的情况下,我采用了一种 hack。我已将 TabHost 活动设置为adjustResize,然后编写代码以在软键盘出现/消失时隐藏/取消隐藏选项卡栏控件 (TabWidget)。我最终得到了一个很好的结果,使用这里的技术:当软键盘打开时调整布局以检测键盘出现/消失。

于 2013-10-18T13:06:49.207 回答