首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PopupWindow解除

PopupWindow解除
EN

Stack Overflow用户
提问于 2012-04-23 16:18:53
回答 3查看 1.3K关注 0票数 0

当我使用dismiss删除弹出窗口时,它是只将其隐藏还是从内存中删除?

我尝试了dismiss,然后尝试了showAtLocation几次(使用相同的PopupWindw对象,而不是重新创建它),窗口显示和隐藏都没有问题。问题是我能指望它吗--也许它被GC标记为删除,但还没有被垃圾收集?

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-23 16:30:14

dismiss()showAtLocation()相反,对象在dismiss()后保持有效状态。因此,切换dismiss()/showAtLocation()是安全的

可以从这里的安卓源代码中看到--您可以查看dismiss()showAtLocation()的实现

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/1.5_r4/android/widget/PopupWindow.java#PopupWindow.showAtLocation%28android.view.View%2Cint%2Cint%2Cint%29

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/1.5_r4/android/widget/PopupWindow.java#PopupWindow.dismiss%28%29

票数 1
EN

Stack Overflow用户

发布于 2012-04-23 16:26:44

只要有对对象的引用,就不会将该对象标记为删除。这样你以后就可以重新放映了。

票数 1
EN

Stack Overflow用户

发布于 2012-04-23 16:22:54

您可以使用以下命令强制使用垃圾收集器

System.gc()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10277081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档