繁体   English   中英

在视图层次结构的顶部插入Android视图

[英]Insert Android view at the top of the view hierarchy

我想知道是否可以在Android应用程序的视图层次结构顶部添加视图。 当前,我有一个从外部服务接收信息的类。 我想向用户显示作为自定义警报收到的信息。 是否可以将此自定义视图插入全局视图层次结构的顶部,以便使其显示在所有其他视图之上。 我宁愿不开始新的活动,只需在当前显示的内容之上添加视图。

是。 访问根视图就像找到它一样容易。

在活动中:

FrameLayout root = (FrameLayout) findViewById(android.R.id.content);

由于根是FrameLayout ,您只需向其添加一个View即可使其位于顶部。 但是,请注意,如果在添加其他视图后添加其他视图,则Z顺序将发生变化。 在这种情况下,您必须使用ViewGroup#bringChildToFront(View view)将其带回到顶部。

编辑:

也可以使用View#getRootView()从另一个View获取根视图。 这并不总是可靠的,因为视图可能未附加到层次结构(在这种情况下,视图本身就是根)。 否则它的父级可能不在层次结构中(在这种情况下,父级本身将是根级)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM