Лучшая практика приведения Материалов в настройки с помощью AppCompat?

Каков наилучший способ принести дизайн материалов в настройки с помощью AppCompat? Я читал некоторые вопросы, и основные моменты кажутся такими:

  • Официальные рекомендации позволяют избегать PreferenceActivity при работе в API > 11 (и я). Вместо этого следует использовать PreferenceFragment s;

  • Использование PreferenceActivity было бы плохо и потому, что вы не можете расширять оба PreferenceActivity и ActionBarActivity;

  • Вы можете использовать общий ActionBarActivity и загрузить в него PreferenceFragment (API > 11). Таким образом, виджеты предпочтений, загруженные из ресурсов, становятся тонированными AppCompat, но это не верно для любого виджета (см. здесь);

  • С предлагаемым решением, в любом случае, весь пользовательский интерфейс выглядит не совсем. (см. изображение на Android 4.2), даже если наследуется от темы AppCompat.

  • Другим способом может быть расширение PreferenceActivity (API > 1). Как сказано, вы не будете расширять ActionBarActivity, а просто наследуете тему AppCompat.

  • Наконец, вы можете просто сделать свое собственное действие ActionBarActivity и иметь дело с виджетами, макетами, полями, SharedPreferences самостоятельно.

В настоящий момент я не знаю рабочего решения. Я видел, как некоторые дискуссии обсуждались в материале Криса Банеса, но решения не было предложено. Я спрашиваю:

  • Удалось ли некоторым из вас добиться чистого (как можно большего) материала в отношении предпочтений и как?
  • Будут ли улучшения в v7 в отношении этой проблемы в будущем?

Ответ 1

введите описание изображения здесь

Я использую AndroidDeveloperLB/MaterialPreferenceLibrary в своих проектах.

Простота установки. Import
Прост в использовании. Sample