【问题标题】:Android tabbar, which active item overlaps adjacent items (see image)Android标签栏,哪个活动项目与相邻项目重叠(见图)
【发布时间】:2012-04-06 10:24:15
【问题描述】:

我需要制作以下设计的标签栏:

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

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

【问题讨论】:

    标签: android tabbar overlapping


    【解决方案1】:

    我通过创建 3 个带圆角的按钮、带圆角的大容器(仅顶部显示在我的图像上)和上述视图的线性布局来制作这个,它填充了任何 2 个相邻按钮的底部角度之间的空间.

    这种线性布局由 4 个部分组成,它们在按钮的 onclicklistener 中动态地将其背景颜色更改为适当的部分(对于 3 个按钮也是如此)。

    阴影是通过按钮的背景可绘制对象(具有 3 个形状项目的图层列表 - 背景形状、填充阴影形状和填充背景形状)中的黑色渐变(具有不同的 alpha)实现的。

    【讨论】:

    • 偶尔,我注意到 View.bringToFront() 方法,它使系统将视图呈现在其他视图之上。可能,我可以制作 3 个水平重叠按钮并通过在按钮的 onclick 侦听器中调用 button.bringToFront() 来解决我的问题。此外,我需要更改每个 onclicklistener 中所有按钮的背景颜色。实际上,它看起来比我最初的解决方案更容易,但我从未测试过 View.bringToFront()。
    猜你喜欢
    • 2011-08-08
    • 2012-12-25
    • 1970-01-01
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-15
    相关资源
    最近更新 更多