android怎么实现类似抽屉效果(如图)

gccd 发布于 2013/08/13 09:43
阅读 2K+
收藏 0

大家应该懂的吧..

加载中
0
打杂程序猿
打杂程序猿
平移动画......
gccd
gccd
但是我希望他的收缩过程中下面的会上移,也就是说.平移时,实际的layout_height也变小.莫非我自己写个线程改变layout_height算了?
0
黛曦葛溪
黛曦葛溪
网上抽屉效果例子很多的,只需要你自己再根据自己需要稍微改进一下就好了,看着你的好像不是全部推拉的,是局部收缩吗?是的话你就写一个点击事件了,点击以后对你想收缩的部分做 隐藏,或删除  就看自己的需求了
gccd
gccd
这样就没有动画效果了,我需要点击后.(像官方提供的SlidingDraw控件一样,官方也说明了,最好自己根据SlidingDraw自己实现)下面的部分会上移,红框内的部分收缩.
0
刎枫

如果你拉出来的界面比较复杂的话。你可以通过ScrollView或者HorizontalScrollView来实现,会很方便!

如果单单用平移动画做,比较麻烦。

    1. 触发按钮和拉出界面分开设计,分别启动动画会出现间隔。

    2. 如果一起设计,那你view的坐标又不好控制。

所以我推荐你用ScrollView。由三部分组成,上方的透明部分,中间的响应按钮,以及下面的拉出界面。

    当出发响应按钮,则通过setSelection(int)或setSelectionFrom(int, int)来实现。


gccd
gccd
回复 @刎枫 : 求code,我的邮箱是 1151345848@qq.com~
刎枫
@gccd ScrollView中 我上面说的是从下拉出来ScrollView子view的顺序,反过来不就可以适应你的了么。
刎枫
回复 @gccd : 你可以看一下SlideDraw的源码。我记得里面也是用ScrollView实现的。 就是滚动啊,点击handle滚出来,在点滚回去。so easy. 如果需要我可以吧code给你。
gccd
gccd
上面红框是拉出部分,我比较想实现像slidingDraw那样,但它那个位置和方向都定死了.额,ScrollView不是一个滚动的吗?
0
TracyZhang
TracyZhang
简单点的话就直接使用动画吧
gccd
gccd
能说这样的话的人一点都不简单啊
0
打杂程序猿
打杂程序猿

引用来自“打杂程序猿”的答案

平移动画......
组合动画...
0
gccd
gccd

引用来自“刎枫”的答案

如果你拉出来的界面比较复杂的话。你可以通过ScrollView或者HorizontalScrollView来实现,会很方便!

如果单单用平移动画做,比较麻烦。

    1. 触发按钮和拉出界面分开设计,分别启动动画会出现间隔。

    2. 如果一起设计,那你view的坐标又不好控制。

所以我推荐你用ScrollView。由三部分组成,上方的透明部分,中间的响应按钮,以及下面的拉出界面。

    当出发响应按钮,则通过setSelection(int)或setSelectionFrom(int, int)来实现。


谢谢~
返回顶部
顶部