我有自定义RelativeLayout和自定义视图。 假设一个布局和两个视图:
<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()
吗?这是一个错误吗?
答案 0 :(得分:0)
在android RelativeLayout中,根据首先定义的对象进行堆叠。根据该定义,android:id =“@ + id / obj2”就在前面。要交换可见性,可以在任一视图上调用setVisibility(View.VISIBLE)或setVisibility(View.INVISIBLE)。希望这有帮助。