0
下面的代码适用于我的设备,但是我看到了生产中的崩溃。 我将活动内容传递到newInstance
回调中的片段上下文
我应该如何使用上下文PreferenceManager.getDefaultSharedPreferences()
?
这可能在不同的设备上有不同的表现吗? (同样的Android版本)
public class MyFragment extends Fragment {
...
private api myApi;
private Context context;
public static MyFragment newInstance(Context context, ...) {
MyFragment frag = new MyFragment();
frag.context = context;
return frag;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
...
api = new MyApi(this.context);
update();
}
private update() {
api.getData(new Callback<GenericMobileResponse<ArrayList<MyData>>>() {
@Override public success(GenericMobileResponse<ArrayList<MyData>> genericMobileResponse, Response response) {
ArrayList<MyData> data = genericMobileResponse.getData();
updateItems(data);
}
})
}
private updateItems(ArrayList<MyData>) {
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this.context); //Crash! getContext()? this.context? getActivity()? getApplicationContext()
}
}