【发布时间】:2015-06-26 02:35:02
【问题描述】:
我正在为用于小屏幕的应用程序开发另一种简化布局。此布局应该不包含在较大布局中使用的地图片段,但是,我应该尽可能避免编程更改。显示布局的活动也使用片段的 ID 处理片段,所以我不能只删除它。我尝试使片段不可见,如下所示:
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone" />
但片段仍然可见。当我将可见性设置为“不可见”时,也会发生同样的情况。片段的默认位置被视图部分隐藏,但是当我在布局中移动片段时,无论我放在哪里,它仍然显示为可见。
片段忽略可见性参数是否有原因?还有其他非编程解决方案吗?
【问题讨论】:
-
您是否在活动中膨胀了片段?添加还是替换?
-
根据使用情况,fragment只被setRetainInstance和getMap使用。我不是 100% 了解它们是如何工作的,但据我所知,那里没有任何东西可以控制视图的可见性......
-
您是否以编程方式尝试过:
setVisibility(View.GONE);? -
不,但我必须尽可能避免程序化更改,特别是因为我只希望它在一个版本的布局中消失。
标签: android android-fragments visibility