警告在TabActivity中从ActivityGroup打开新活动

时间:2011-03-15 02:42:54

标签: android android-intent tabactivity activitygroup

我有几个标签的tabactivity。每个选项卡都有一个与之关联的ActivityGroup,并使用LocalActivityManager来处理本地活动堆栈。这一切似乎都正常工作,虽然我还没有做过任何广泛的调试。

我的一些活动需要打开顶部没有tabactivity小部件的窗口。这对我来说似乎很直接,我称之为任何其他活动:

Intent i = new Intent(this, ActivityLeaveTabs.class);
startActivity(i);  

说实话,一切似乎都很好,但每次我离开时都会收到以下警告:

  

无法保存哪个视图具有焦点,因为焦点视图com.android.internal.policy.impl.PhoneWindow $ DecorView@43e4a3888没有id

我应该提一下,我将这个意图从作为活动组一部分的活动之一发出,活动组本身代表了标签符号中的一个标签。我怀疑这个问题源于从那里调用“startActivity(this,...”),但是我尝试了一些使用getParent()的变种,这些没有帮助。

我不清楚警告的含义或实际上是否有问题。任何帮助解决警告或任何人可以告诉我不要担心它(该程序似乎工作得很好)将不胜感激!

1 个答案:

答案 0 :(得分:2)

听起来它与保存焦点有关,因为新的活动出现在前面。

This对这个问题有所了解; DecorView包含您活动中的所有其他观看次数。它通常没有理由拥有一个id(尽管你可能能够以编程方式设置一个)。由于背景是否具有焦点并不重要,我认为你可以放心地忽略这个警告。

一个有趣的测试是尝试通过按钮的onClick或其他需要让另一个视图获得焦点然后查看您是否仍然收到警告的其他活动。