可以在android中使用此模式,然后在需要应用程序上下文时使用App.context吗?
我想在枚举类中访问getString(id),因此考虑此解决方案。
public class App extends Application
public static Context context;
public App() {
this.context = this;
}
}
原则是永远不要对Context
正常寿命以外的东西有强烈的提法。Application
在您使用应用程序时,Android会管理该实例-只要Android保持您的应用程序运行,它将始终只有一个,并且只有一个。简而言之,Application
上下文是您可以保留的唯一引用,而不必担心它会泄漏。
但是,我认为最好onCreate()
在公共构造函数中进行赋值。除了少数例外,对于Android管理的组件,onCreate()
应该开始运行自己的代码。
@Override
public void onCreate() {
super.onCreate();
appContext = this;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句