Android onDestroyView()方法有什么问题?
在片段被销毁之前,我试图保存pref中的值,但出现了一条错误消息 android.support.v4.app.SuperNotCalledException:片段未调用super.onDestroyView() 这是我的密码Android onDestroyView()方法有什么问题?,android,sharedpreferences,android-ondestroy,Android,Sharedpreferences,Android Ondestroy,在片段被销毁之前,我试图保存pref中的值,但出现了一条错误消息 android.support.v4.app.SuperNotCalledException:片段未调用super.onDestroyView() 这是我的密码 @Override public void onDestroyView() { pref3.edit().clear().commit(); for (int i = 0; i < movies1.size(); i++) { fav
@Override
public void onDestroyView() {
pref3.edit().clear().commit();
for (int i = 0; i < movies1.size(); i++) {
favouritemovies1.add(movies1.get(i));
SharedPreferences.Editor editor3 = pref3.edit();
editor3.putStringSet("favouritemovies", favouritemovies1);
editor3.commit();
Toast.makeText(getActivity(), "destroyed", Toast.LENGTH_SHORT).show();
super.onDestroyView();
}
}
@覆盖
公共无效onDestroyView(){
pref3.edit().clear().commit();
对于(int i=0;i
当我对循环进行评论时,一切都很好 删除
super.onDestroyView()从循环中编写>并将其写入顶部,如下所示
@Override
public void onDestroyView() {
super.onDestroyView();
pref3.edit().clear().commit();
for (int i = 0; i < movies1.size(); i++) {
favouritemovies1.add(movies1.get(i));
SharedPreferences.Editor editor3 = pref3.edit();
editor3.putStringSet("favouritemovies", favouritemovies1);
editor3.commit();
Toast.makeText(getActivity(), "destroyed", Toast.LENGTH_SHORT).show();
}
}
@覆盖
公共无效onDestroyView(){
super.onDestroyView();
pref3.edit().clear().commit();
对于(int i=0;i
希望对你有帮助快乐编码只需保留super.onDestroyView()
在for
循环外,在@Override
方法内,如下所示:-
@Override
public void onDestroyView() {
// or here
pref3.edit().clear().commit();
for (int i = 0; i < movies1.size(); i++) {
favouritemovies1.add(movies1.get(i));
SharedPreferences.Editor editor3 = pref3.edit();
editor3.putStringSet("favouritemovies", favouritemovies1);
editor3.commit();
Toast.makeText(getActivity(), "destroyed", Toast.LENGTH_SHORT).show();
}
super.onDestroyView();
}
@覆盖
公共无效onDestroyView(){
//还是在这里
pref3.edit().clear().commit();
对于(int i=0;i
解决你的问题。快乐编码将此行移动到super.onDestroyView();到第一行。您需要从循环中删除“super.onDestroyView();”。