Use new app header in more screens.

- This covers app data usage settings, power usage details
- Addded helper method on AppHeaderController to build the header as
  Preference because every fragment needs to do this anyway.

Bug: 32442716
Test: RunSettingsRoboTests

Change-Id: I6d38321b867154f8fb5194b993d118bcdbbfedc9
This commit is contained in:
Fan Zhang
2016-10-28 11:17:04 -07:00
parent 5abaef7dd1
commit fdb833873a
9 changed files with 123 additions and 59 deletions

View File

@@ -133,7 +133,7 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
: new ColorDrawable(0),
mApp.mUiLabel, mApp.mPackage, mApp.mUiTargetApp.uid);
} else {
final View appHeader = FeatureFactory.getFactory(activity)
final Preference pref = FeatureFactory.getFactory(activity)
.getApplicationFeatureProvider(activity)
.newAppHeaderController(this, null /* appHeader */)
.setIcon(mApp.mUiTargetApp != null
@@ -145,11 +145,8 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
? mApp.mUiTargetApp.uid
: UserHandle.USER_NULL)
.setButtonActions(ActionType.ACTION_APP_INFO, ActionType.ACTION_NONE)
.done();
final Preference appHeaderPref = new LayoutPreference(getPrefContext(), appHeader);
// Makes sure it's the first preference onscreen.
appHeaderPref.setOrder(-1000);
getPreferenceScreen().addPreference(appHeaderPref);
.done(getPrefContext());
getPreferenceScreen().addPreference(pref);
}
}