我正在处理一个奇怪的问题。
我正在对ListView
行使用以下布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:jn="http://schemas.android.com/apk/res/com.appeaser.justnoteproject"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<BUNCH OF VIEWS />
<RelativeLayout
android:id="@+id/rlCon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/margin_note_bottom"
android:layout_marginLeft="@dimen/margin_note_left"
android:layout_marginRight="@dimen/margin_note_right"
android:layout_marginTop="@dimen/margin_note_bottom" >
<BUNCH OF VIEWS />
<View
android:id="@+id/vOverlay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/blue_overlay"
android:visibility="gone" />
</RelativeLayout>
</RelativeLayout>
在我的列表适配器中,我根据特定条件切换
vOverlay's
可见性。但是,即使在切换可见性之后,也不会显示vOverlay
。为了验证代码是否按预期工作,我将
vOverlay
的高度和宽度更改为50dp
。当我这样做时,vOverlay's
可见性按预期工作-除了我需要的大小是match_parent
。有人可以解释我在做什么错吗?如何获得预期的结果?
最佳答案
将外部RelativeLayout替换为FrameLayout,然后将叠加层移动到该FrameLayout的第二个子级