8

我通过在 windowManager 中添加一个视图mWindowManager.addview()。现在我想知道是否可以获取window实例。他们是myView.getWindowID()myView.getWindowToken()但我找不到从中检索窗口实例的方法

4

3 回答 3

6

如果您View已附加到Activity,您可以这样做。

View view; // your view
if (view.getContext() instanceof Activity) {
    Window window = ((Activity) view.getContext()).getWindow();
}

API 19 之后,有一个方便的方法来检查,view.isAttachedToWindow()

于 2017-05-30T08:00:09.213 回答
2

您无法从或获取window实例。但是您可以通过调用此方法 来获取视图所附加的ViewWindowManagerDisplaywindowmyView.getDisplay()

已编辑 - 您可以使用View.bringToFront();View.bringChildToFront(View child);重新排序视图的 z-index。

于 2017-05-30T07:52:37.193 回答
-1

myView.getDisplay() 你可以使用这个方法来显示视图。

于 2017-05-30T07:59:31.403 回答