Android:如何通过按下按钮来创建向上/向下滑动的布局?

时间:2015-06-18 21:08:49

标签: android layout

我正在开发一款Android应用(API 14 - 21),其布局如下:

-----------------------
|  Layout 1           |
-----------------------
| X | Layout 2        |
-----------------------
|                     |
|                     |
|  Layout 3           |
|                     |
|                     |
-----------------------

单击“X”时,我需要布局3从屏幕滑到底部,软键盘弹出,“X”和布局2向下滑动(但保持尺寸)在...软键盘和布局1向下扩展以填充任何额外空间。所以它看起来像这样

-----------------------
|                     |
|  Layout 1           |
|                     |
-----------------------
| X | Layout 2        |
-----------------------
|                     |
|  Soft Keyboard      |
|                     |
-----------------------

我尝试将RelativeLayout作为所有其他人的主要布局。我将布局1对齐父对象的顶部/左侧,“X”+布局2容器对齐左侧,布局3对齐布局3,布局3对齐底部/左侧父级。我想如果我在代码中将Layout 3设置为VISIBLE / GONE,那就可以了。相反,布局3只是消失,其他一切都保持不变,我看到布局3的白色背景。

关于如何实现这种效果的任何想法?

3 个答案:

答案 0 :(得分:0)

在将layout3设置为GONE后,您是否尝试将布局1和布局2的大小调整为全屏?

答案 1 :(得分:0)

在ScrollView中添加您的entiry屏幕。 Android将跨越焦点视图。

答案 2 :(得分:0)

听起来好像您已经能够检测到何时显示软键盘,并且可以告诉Layout3此时隐藏自己(View.Gone)。

白色背景的原因很可能是你设置了具有固定高度设置的Layout1和layout2,当你告诉layout3消失时,它们不会扩展以占用可用空间,因此你会看到白色父ViewGroup的backgorund。