我有一个自定义的相对布局和自定义视图。假设一个布局和两个视图:
<VRelativeLayout
android:id="@+id/layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/grad">
<VView
android:id="@+id/obj1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<VView
android:id="@+id/obj2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</VRelativeLayout>
在此示例中,obj1
位于前面。不obj2
.此外,如果我在 XML 中切换排列(obj1
obj2
之后),则没有任何变化。为什么?唯一的想法是在代码中使用View.bringToFront()
吗?这是一个错误吗?
在 android RelativeLayout 中,对象被堆叠,根据哪个首先定义。根据这个定义,android:id="@+id/obj2"排在前面。要交换可见性,您可以在任一视图上调用 setVisibility(View.VISIBLE) 或 setVisibility(View.INVISIBLE)。希望这有帮助。