成都网站建设设计

将想法与焦点和您一起共享

Android全局获取Context实例详解

Android全局获取Context实例详解

成都创新互联专注于网站建设,为客户提供成都网站建设、成都网站设计、网页设计开发服务,多年建网站服务经验,各类网站都可以开发,品牌网站设计,公司官网,公司展示网站,网站设计,建网站费用,建网站多少钱,价格优惠,收费合理。

在弹出Toast 启动活动 发送广播 操作数据库 使用通知等等时都需要Context

如果操作在活动中进行是很简单的,因为活动本身就是一个Context对象

但是当逻辑代码脱离了Activity类,此时使用Context就需要一些技巧了:

我们可以定制一个自己的Application类,以便管理程序内一些全局状态信息,比如全局Context

代码如下:

public class MyApplication extends Application{
  
  private static Context context;

  @Override
  public void onCreate() {
    context = getApplicationContext();
  }
  public static Context getContext(){
    return context;
  }
}

重写父类onCreate()方法,并通过调用getApplicationContext()方法得到应用程序级别的Context

然后提供静态的getContext()方法,将取到的Context进行返回

注意:记得在AndroidManifest.xml文件的标签下进行初始化MyApplication类


这样就实现了全局获取Context的机制,在应用程序里任何地方使用Context只需调用 MyApplication.getContext()就可以了

如:

Toast.makeText(MyApplication.getContext(),"全局Context",Toast.LENGTH_SHORT).show();

如果还用到其他的Application,则可以在MyApplication中的OnCreate()方法中调用其他Application的初始化方法即可

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


分享名称:Android全局获取Context实例详解
URL地址:http://chengdu.cdxwcx.cn/article/pejcsj.html