以getApplication()为上下文抛出“无法添加窗口标记空”的对话框
AlertDialog.Builder builder = new AlertDialog.Builder(this);
有两种简单的方法可以避免与上下文相关的内存泄漏。最明显的是避免在其自身范围之外逃避上下文。上面的例子显示了静态引用的情况,但是内部类及其对外部类的隐式引用可能同样危险。第二个解决方案是使用应用程序上下文。只要应用程序还活着,并且不依赖于活动生命周期,这个上下文就会存在。如果计划保留需要上下文的长寿对象,请记住应用程序对象。您可以通过调用Context.getApplicationContext()或Activity.getApplication()轻松获得它。
AlertDialog()
getApplicationContext()
getApplication()
“无法为应用程序添加窗口标记空”
Activity.getApplication()
撒科打诨
繁华开满天机
慕尼黑5688855
相关分类