@Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    final TypedValue tv = new TypedValue();
    getActivity().getTheme().resolveAttribute(R.attr.preferenceTheme, tv, true);
    final int theme = tv.resourceId;
    if (theme <= 0) {
      throw new IllegalStateException("Must specify preferenceTheme in theme");
    }
    mStyledContext = new ContextThemeWrapper(getActivity(), theme);

    mPreferenceManager = new PreferenceManager(mStyledContext);
    mPreferenceManager.setOnNavigateToScreenListener(this);
    final Bundle args = getArguments();
    final String rootKey;
    if (args != null) {
      rootKey = getArguments().getString(ARG_PREFERENCE_ROOT);
    } else {
      rootKey = null;
    }
    onCreatePreferences(savedInstanceState, rootKey);
  }