全局获取Context

在很多地方都需要用到Context,但在特殊情况下无法获取Context, 需要定义自己的Application,既可以利用我们自己的类来获取Context

public class MyApplication exends Application{
    private static Content content;重写父类的onCreate方法,并调用getApplicationContext()方法得到一个应用程序级别的Context然后静态方法将其返回
    public void onCreate(){
      context = getApplicationContext();
}
            public static Context get Context(){
               return context;
}
}        

还要在清单文件中的application标签中进行指定当启动程序时初始化MyAoolication类,而不是默认的类,调用主函数Context的时候就可以MyApplication.getContext();

android:name="完整包名.MyApplication"

以上是通用情况,

LitePaly在使用的时候就要求必须在清单文件中配置

android:name="org.litepal.LitePalApplication"

会和我们的配置起冲突,但是Litepal给出了解决方案,

public class MyApplication exends Application{

    private static Content content;
重写父类的onCreate方法,并调用getApplicationContext()方法得到一个应用程序级别的Context
然后静态方法将其返回
    public void onCreate(){
      context = getApplicationContext();    //把全局变量的Context对象通过参数传递给了LitePal,效果和在清单文件中配置LitePalApplication一样    listPalApplication.initalize(context);
}
            public static Context get Context(){
               return context;
}
}    
时间: 2024-08-06 02:48:20

全局获取Context的相关文章

全局获取Context的技巧

全局获取Context的技巧 在android开发中,非常多地方都要用到Context上下文这个类对象,比方:弹出 Toast 的时候须要.启动活动的时候须要.发送广播的时候须要.操作数据库的时候须要.使用通 知的时候须要等. 假设是在Activity中,那么获取这个context对象非常easy,由于Activity本身就继承Context.直接受用this就能够了. 可是对于比較复杂的逻辑,这些代码没有放在Activity中.那么.获取Context就显得不是那么easy了. 这里告诉大家一

android#全局获取Context的技巧

参考<第一行代码>——郭霖 回想这么久以来我们所学的内容,你会发现有很多地方都需要用到Context,弹出Toast的时候需要.启动活动的时候需要.发送广播的时候需要.操作数据库的时候需要.使用通知的时候需要等等等等.或许目前你还没有为得不到Context而发愁过,因为我们很多的操作都是在活动中进行的,而活动本身就是一个Context对象.但是,当应用程序的架构逐渐开始复杂起来的时候,很多的逻辑代码都将脱离Activity类,但此时你又恰恰需要使用Context,也许这个时候你就会感到有些伤脑

Android 全局获取 Context 与使用 Intent 传递对象

=====================全局获取 Context======================== Android 开发中很多地方需要用到 Context,比如弹出 Toast.启动活动.发送广播.操作数据库…… 由于很多操作都是在活动中进行的,而活动本身就是一个 Context 对象,所以获取 Context 并不是那么困难. 但是,当应用程序的架构逐渐开始复杂起来的时候,很多的逻辑代码都将脱离 Activity 类,由此在某些情况下,获取 Context 并非那么容易. An

全局获取Conrtext

每一个活动都是Context的对象,当在普通类中用到Context时(如弹出Toast.启动活动.发送广播等)该如何获取呢? 解决方法:Android提供了一个Application类,在应用程序启动时,系统会自动对该类进行初始化.为了管理程序内全局的状态信息如全局Context,可以定制自己的Application类. 1.创建自己的Application类 1 public class MyApplication extends Application { 2 private static

如何在Fragment中获取context

文章转载自http://blog.csdn.net/demonliuhui/article/details/51511136 这里仅供自己学习参考: Context,中文直译为"上下文",SDK中对其说明如下: 1.它描述的是一个应用程序环境的信息,即上下文. 2.该类是一个抽象(abstract class)类,Android提供了该抽象类的具体实现类(后面我们会讲到是ContextIml类). 3.通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个Acti

关于在Android设置全局变量随时获取context

最实在的办法就是继承Application,在里面设置全局变量,因为Application是android的应用入口,并且运行周期贯穿整个程序运行. import android.app.Application; public class MyApplication extends Application{ private static Context mContext; public static Context getContext (){ return this.mContext; } p

在fragment中使用listview获取context

使用 getActivity() ArrayAdapter adapter = new ArrayAdapter(getActivity(), // 获取上下文 android.R.layout.simple_list_item_1, new String[]{"插入排序", "合并排序", "快速排序", "堆排序"});

fragment中通过getActivity()获取Context空指针

最近在搞蓝牙通信的时候碰到一个很恼火的问题,就是在Fragment中使用activity的方法,,,new一个activity老是报空指针. 解决方法: 在Fragment的onAttach(Context context)方法中调用(activity)getActivity()即可解决; 哈哈,很简单吧... 原文地址:https://www.cnblogs.com/dmrbell/p/11316530.html

浅析Android Context

一:什么是Context? Context,sdk中的解释如下:interface to global information about an application environment.This is an abstract class whose implementation is provided by the Android System.It allows access to application-specific resources and classes,as well a