2012-04-06 21 views
1

我需要进行以下的DESIGH的TabBar: enter image description here的Android的TabBar,其活性项目重叠相邻的项目(参照图像)

及其活性项目重叠相邻的项目。 我的问题是,我不知道如何使不同的选项卡相互重叠(据我所知,不可能以编程方式更改视图的z顺序)。怎么做?

P.S.顺便说一下,我没有必要使用特别的tabbar。例如,可以是水平线性布局中的3个按钮或允许制作标签栏功能的任何其他视图组合。

回答

1

我通过创建具有圆角,具有倒圆的角大容器(仅显示我的图像在它的上面)和线性布局behing上述观点,其任何两个相邻的底部角之间填充空间3按钮所做的这一个纽扣。

该线性布局由4个部分组成,其改变其背景颜色在按钮动态地适当的一个onclicklistener(同样为3个按钮)。

阴影是通过按钮的背景drawables(其中包含3个形状项目 - 背景形状,填充阴影形状和再次填充背景形状的层列表)中的黑色渐变(使用不同的alpha)实现的。

+0

偶尔,我注意到View.bringToFront()方法,它使得系统呈现上述其它视图的视图。可能,我可以制作3个水平重叠按钮,并通过调用按钮的onclick监听器中的button.bringToFront()来解决我的问题。此外,我需要更改每个onclicklistener中所有按钮的背景颜色。实际上,它比我的初始解决方案更容易,但我从未测试过View.bringToFront()。 – 2012-05-05 13:02:16