(转)Android 如何全局获取Context

转自:http://blog.csdn.net/yyywyr/article/details/39248937
有时,在处理业务逻辑的时候,需要Context对象,但在某些情况下,并非容易获取,这时就需要一些巧妙的手段来管理Context。在Android中,提供了一个类Application,当应用程序启动的时候,系统会自动将这个类进行初始化,所以我们可以编写自己的Application类以管理一些全局的状态信息。在这里,以获取全局Context为例。

1、编写自己的Application类

package com.example.testapplication;  
  
import android.app.Application;  
import android.content.Context;  
  
/** 
 * 编写自己的Application,管理全局状态信息,比如Context 
 * @author yy 
 * 
 */  
public class MyApplication extends Application {  
    private static Context context;  
      
    @Override  
    public void onCreate() {  
        //获取Context  
        context = getApplicationContext();  
    }  
      
    //返回  
    public static Context getContextObject(){  
        return context;  
    }  
}  
接着,需要告知系统,当程序启动的时候应该初始化MyApplication类,而不是默认的Application类。

2、修改AndroidManifest.xml文件

修改application属性:
<application  
    android:name="com.example.testapplication.MyApplication"  
     ....  
   >
这样就实现了全局获取Context的机制。

3、使用

无论在任何地方使用,都可以使用如下获取Context对象:
MyApplication.getContextObject();  

猜你喜欢

转载自blog.csdn.net/yjbuaa/article/details/81714574