我想在ViewGroup
中从一个视图渐变到另一个视图。目前,我正在使用setAlpha
做过渡,但问题是,只有一个视图正在渲染,一个是在顶部,正在淡出。
-
ViewGroup
内的视图数组是z轴的顺序吗? - 只渲染顶视图吗?
我的layout
方法是这样的:
@Override
protected void onLayout(final boolean changed, final int l, final int t, final int r, final int b) {
L.debug("laying out {} children", this.getChildCount());
for (int i = 0; i < this.getChildCount(); i++) {
L.debug("layout out {}", i);
View view = this.getChildAt(0);
view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());
}
}
为什么你不想使用ViewSwitcher?它完全符合你的要求。下面是一个例子。
ViewGroup内的view-array是按z轴排列的吗?
在android中没有z轴顺序这样的东西。视图按照添加到ViewGroup的顺序绘制。先加先抽。
是否只渲染顶视图
不,android会在可视区域内绘制所有视图,即使它们被其他视图完全重叠。
我认为你应该修复这个地方this. getchildat(0)和布局所有的儿童在你的ViewGroup