什么是非嵌入式活动,为什么android:fitsSystemWindows不能在其中工作?

时间:2014-09-16 16:54:32

标签: android android-layout android-activity

我正在尝试在视图上使用android:fitsSystemWindows属性,以便它不被我的半透明导航栏阻止,但它没有做任何事情。关于它的Android文档说fitsSystemWindows“只有在此视图处于非嵌入活动时才会生效。”

什么是嵌入式活动?我是否有可能意外地创造了一个?是否有可能将fitsSystemWindows的效果纳入其中?

1 个答案:

答案 0 :(得分:13)

嵌入式活动是托管在父活动中的活动。常见的例子是TabHost / TabActivity设计。特别是,嵌入式Acitvities位于主机LocalActivityManager中,它在概念上类似于FragmentManager,它允许您在另一个内显示一个Activity。

鉴于此定义,很容易理解为什么只有主机(非嵌入式)活动可以支持fitsSystemWindows属性,因为任何嵌入式活动都限制在其主机定义的区域内。

您不太可能意外地创建了一个。

请参阅:android: using ActivityGroup to embed activities