Fixed clear all does not work under multi-window
After going into multi-window or rotate screen, getFragments()
refers wrong fragments, so changed to update UI by adapter
Bug: 31510193
Change-Id: Ic5f998e6543954f3bd9c497e10c56b4a939edfe8
diff --git a/src/com/android/emergency/EmergencyTabActivity.java b/src/com/android/emergency/EmergencyTabActivity.java
index 88aaf3e..8ce2e2c 100644
--- a/src/com/android/emergency/EmergencyTabActivity.java
+++ b/src/com/android/emergency/EmergencyTabActivity.java
@@ -125,11 +125,16 @@
return mFragments.size();
}
+ /** Return the adapter. */
+ protected ViewPagerAdapter getTabsAdapter() {
+ return mTabsAdapter;
+ }
+
/** Returns the fragments to show in the tabs. */
protected abstract ArrayList<Pair<String, Fragment>> setUpFragments();
/** The adapter used to handle the two fragments. */
- private class ViewPagerAdapter extends FragmentStatePagerAdapter {
+ protected class ViewPagerAdapter extends FragmentStatePagerAdapter {
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
diff --git a/src/com/android/emergency/edit/EditInfoActivity.java b/src/com/android/emergency/edit/EditInfoActivity.java
index c2ac029..66e3480 100644
--- a/src/com/android/emergency/edit/EditInfoActivity.java
+++ b/src/com/android/emergency/edit/EditInfoActivity.java
@@ -143,13 +143,10 @@
sharedPreferences.edit().remove(PreferenceKeys.KEY_EMERGENCY_CONTACTS).commit();
// Refresh the UI.
- ArrayList<Pair<String, Fragment>> fragments = getFragments();
- EditEmergencyInfoFragment editEmergencyInfoFragment =
- (EditEmergencyInfoFragment) fragments.get(0).second;
- editEmergencyInfoFragment.reloadFromPreference();
- EditEmergencyContactsFragment editEmergencyContactsFragment =
- (EditEmergencyContactsFragment) fragments.get(1).second;
- editEmergencyContactsFragment.reloadFromPreference();
+ ViewPagerAdapter adapter = getTabsAdapter();
+ if (adapter != null){
+ adapter.notifyDataSetChanged();
+ }
}
/**