2012-12-12 45 views
0

我在android中使用对话主题活动来显示应用程序上下文中的弹出窗口。该对话框有一个透明的主题,但问题是我希望底层活动有焦点,而不是弹出窗口,但弹出窗口必须是可见的。我如何在android中实现这一点?在android中更改活动的焦点

回答

0

我想你将不得不使用片段,并使其看起来像一个弹出对话框。

0

您无法在活动之间切换焦点。当时只有一个“关注焦点”的活动,并且是当时正在展示的活动。透明背景并不意味着您可以访问下面的活动。

如果我没有弄错,您希望能够在屏幕上显示“对话框”的同时与活动的控件进行交互。 Android中的任何类型的Dialog类都无济于事,因为它们将焦点放在了焦点上。不太确定PopupWindow,但我猜将与文档中说的相同"that appears on top of the current activity."

您将不得不在您的活动中使用RelativeLayout/FrameLayout创建自定义对话框。

+0

但即使我使用相对布局创建自定义对话框,但当我弹出它时,不会让底层元素失去焦点,而弹出窗口会成为焦点,或者我误解了这里 –

+0

您的父视图应该是相对或框架布局,而不是对话本身。因此,只需在其他顶部添加一个新的View即可。您将拥有所有UI元素,并且您可以请求关注或与其中的任何元素进行交互 –

+0

我在对话主题活动中使用相对布局,然后弹出它。尽管我能够控制底层元素,但是因为我添加了标志FLAG_NOT_TOUCH_MODAL,所以后台活动仍然变暗并且似乎失去焦点。任何想法如何克服这一点? –