您好,登录后才能下订单哦!
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文件的<application>标签下进行初始化MyApplication类
<application ... android:name="com. ... .MyApplication" <——这里最好填上完整包名 ... </application>
这样就实现了全局获取Context的机制,在应用程序里任何地方使用Context只需调用 MyApplication.getContext()就可以了
如:
Toast.makeText(MyApplication.getContext(),"全局Context",Toast.LENGTH_SHORT).show();
如果还用到其他的Application,则可以在MyApplication中的OnCreate()方法中调用其他Application的初始化方法即可
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。