我在更改 ScrollView 中 View 的 Z 顺序时遇到问题。
我希望我能正确解释我的用例。
用例如下:
我有一个线性布局 LL 的 scrollView SV。
在 LL 中我添加了几个 View 。这些 View 是 RelativeLayouts RL,内部有 2 个 ImageView (IMG1 和 IMG2)。 IMG1 可见,IMG2 不可见。
当我触发某个 Action 时,我为消失的 imageView IMG2 设置动画,使其向右滑动。它在 IMG1 的后面滑动,只显示超过 IMG1 宽度的部分。没关系,这就是我想要的。
除了一件事,我一切正常:我希望 IMG2 位于 IMG1 的后面(就像现在一样),但在 ScrollView 内所有其他 RL 的前面。
我认为我的问题可以归结为以下几点:如何更改 ScrollView 中 View 的 Z 顺序?因为如果我可以在 scrollView 内对 RL 进行 z 排序(按我的意愿放在前面或发送到后面),这个用例将起作用。
从我的测试中,我看到 View 的 z 顺序与我将 View 添加到 ScrollView 的顺序相同,但这破坏了我的情况,因为我需要将 View 置于前面或将 View 发送到后面想要。
我尝试了 bringToFront 和 bringChildToFront 的所有方法,但没有任何效果。
有没有办法做到这一点?
最佳答案
我还没有尝试过,但我建议使用 removeView(v)
然后使用 addView(v, index)
来删除 subview ,然后重新- 将其插入订单堆中的所需位置。这可能是解决问题的一种极其重量级的方法,但它可能会奏效。
关于android - 从 ScrollView 中的元素更改 z 顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8930438/