2017.8.19 16:44 《第一行代码》学习中
Q:在编写一个天气APP代码的时候,出了一个问题:直接在代码中调用getContext()。
结果,报错No virtual method :getContext()
R:之后我突然想起《第一行代码》中有关于如何获取全局Context的方法,我就按照上面的方法:新建了一个MyApplication类
public class MyApplication extends Application { private static Context mContext; @Override public void onCreate() { mContext = getApplicationContext(); LitePalApplication.initialize(mContext); } public static Context getContext() { return mContext; } }
这样,可以在代码中的任意地方想使用Context,只需要调用MyApplication.getContext()就可以了。
但是注意要在AndroidManifest.xml文件中<Application>标签指定android:name="完整的包名",这是要告诉系统此时要启动自己的MyApplication而不是原来的Application。
<application android:name="com.tgl.myweather.MyApplication"