2009-11-12 45 views
2

在我的android应用程序中,我有一个EditText。当我点击这个字段时,出现软键盘,从屏幕的底部扩展。它似乎实际上修改我的布局,向上推动内容。当我关闭键盘时,它会缩回,并且我看到我的布局重新展开以占据先前占用的空间。获取软键盘停止修改我的LinearLayout显示?

有没有办法让键盘简单地出现在我的布局的“顶部”,这样我就不会觉得这有点不愉快的重新布局动画? EditText被固定在屏幕的最顶端,所以我不必担心键盘会隐藏它。

感谢

回答

2

默认情况下,Android的应该使用“潘和扫描”,这会工作或多或少你如何描述。键盘显示在您的视图上,您​​可以在后台滚动视图。如果你为Activity重写windowInputMode,或者Android确定Activity的大小可调(因为存在可调整大小的字段... ListView,ScrollViews等),它可能会改变你的视图的大小,而这听起来就是这样正在进入。迫使它平移和扫描尝试添加:

机器人:windowSoftInputMode =“adjustPan”

在你的XML布局的活动元素的属性。

还有第三种选择。您可以指定当选择EditText时,它将在全屏模式下编辑。视图中的其他控件将被隐藏,用户只会看到键盘,EditText控件以及其他有限的控件。如果您的EditText不需要视图中其他元素的大量上下文,则可能会阻止更清晰的用户界面。有关详细信息,请参阅:http://android-developers.blogspot.com/2009/04/updating-applications-for-on-screen.html

+0

为我工作... – Rawr 2012-08-30 22:59:06

0

地址:

android:windowSoftInputMode="adjustResize" 

在manifest.xml中您的活动ATTR。希望它会有所帮助。

0

这个问题似乎表明调整大小是不可取的。我有同样的问题,但加入

android:windowSoftInputMode="adjustNothing"

清单文件,而不是解决我的问题。