在Android项目开发中,经常会用到Context对象。尽管一个android项目中Context对象有很多(application+Activity+Service),但我们还是经常会遇到获取不到Context对象的尴尬境地,今天学了一招,在项目的任何地方都能获取到Context对象,下面加以整理和总结。
在项目中,
1、新建一个MyApplication类(随意取个类名),extends系统的Application。
2、重写Application的onCreate()的方法。
3、定义一个使用PRivate static 修饰的Context对象,在onCreate()方法中通过getApplicationContext()方法对其进行赋值,
4、创建一个公共静态的方法getContext(),用来获取全局的Context对象。
5、在Manifest文件的Application节点中,使用name属性引用MyApplication(之前新建的Application类)。
6、使用MyApplication.getContext()可以在项目的任何地方获取Context对象。
public class MyApplication extends Application { private static Context context; @Override public void onCreate () { this.context = getApplicationContext (); } public static Context getContext(){ return context; }}
新闻热点
疑难解答