android在很多的地方都會用到Context變量,但是除了在Activity中,我們在別的地方都不是很好獲取到。Android中有個Application類,每當系統開始啓動的時候就會自動將這個類進行初始化,因此我們可以重寫這個類,通過這個類來獲取到全局Context變量。
java代碼:
package com.example.viewpagerdemoprimary;
import android.app.Application;
import android.content.Context;
public class MyApplication extends Application {
private static Context context;
@Override
public void onCreate() {
context = getApplicationContext();
}
public static Context getContext() {
return context;
}
}
這裏需要注意的是,我們還需要告知系統當程序啓動的時候,應該初始化我們重寫的這個MyApplication類,而不是默認Application類。因此我們需要在AndroidManifest.xml
文件中的<application>標籤下進行指定,
<application
android:name="com.example.viewpagerdemoprimary.MyApplication">
注:這裏指定的時候,需要寫上完整的包名,不然系統找不到這個類。
這樣我們在需要用到Context的時候,直接用MyApplication.getContext()調用就行了。