Android 如何全局获取Context
2016-05-22 22:29
435 查看
有时,在处理业务逻辑的时候,需要Context对象,但在某些情况下,并非容易获取,这时就需要一些巧妙的手段来管理Context。
在Android中,提供了一个类Application,当应用程序启动的时候,系统会自动将这个类进行初始化,所以我们可以编写自己的Application类以管理一些全局的状态信息。
在这里,以获取全局Context为例。
1、编写自己的Application类
[java] view
plain copy
print?
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属性:
[html] view
plain copy
print?
<application
android:name="com.example.testapplication.MyApplication"
....
>
这样就实现了全局获取Context的机制。
3、使用
无论在任何地方使用,都可以使用如下获取Context对象:
[java] view
plain copy
print?
MyApplication.getContextObject();
在Android中,提供了一个类Application,当应用程序启动的时候,系统会自动将这个类进行初始化,所以我们可以编写自己的Application类以管理一些全局的状态信息。
在这里,以获取全局Context为例。
1、编写自己的Application类
[java] view
plain copy
print?
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属性:
[html] view
plain copy
print?
<application
android:name="com.example.testapplication.MyApplication"
....
>
这样就实现了全局获取Context的机制。
3、使用
无论在任何地方使用,都可以使用如下获取Context对象:
[java] view
plain copy
print?
MyApplication.getContextObject();
相关文章推荐
- Android 收发短信 (8.2)
- android 获取屏幕高度和宽度 的方法
- Android亮屏和熄屏控制
- android中的动画
- Android开发项目之一:打招呼
- android studio 提示 “Gradle project sync failed”
- 命令模式在Android实际场景中运用
- 国内使用东软镜像更新Android SDK很方便
- Android图片压缩(包含拍照或从相册选取图片,PopupWindow的使用)
- Android系统文件夹组织结构
- Android Notification的基本应用 (8.1)
- (Android studio)关于drawable文件夹的问题
- android-项目目录的详细介绍
- 转载:Android应用的自动更新模块
- 使用Android studio 开发xposed插件
- android状态栏一体化(改变状态栏的背景颜色)
- Android ListView.setEmptyView
- android源码浏览网址
- android:theme 与 setTheme()设置透明效果并不同
- Android View源码解读:浅谈DecorView与ViewRootImpl