[Android]SupportLibrary v23から追加されたPreferenceFragmentCompatを使ってみる - Qiita を参考に PreferenceFragmentCompat を使ってみたときのメモ。
PreferenceFragmentCompat を使ってみた
元々は
Android - appcompat 21+でPreferenceActivityを実現する方法 - Qiita
に書いていた Machinarius/PreferenceFragment-Compat を使う方式を卒業して SupportLibrary 版を使いたいという思いから。
android.support.v7.preference.PreferenceFragmentCompat
を試してみたところ、下記のような感じでデザインが崩れまくった。
例によって StackOverflow と Issue Tracker に載っていた。
- android - PreferenceFragmentCompat requires preferenceTheme to be set - Stack Overflow
- Issue 183376 - android - preference-v7 support lib design bug - Android Open Source Project - Issue Tracker - Google Project Hosting
ので workaround を適用しようと思ったけど、
v7のPreferenceFragmentCompatを使っていてもとにかくv14版もgradleに書いて「PreferenceThemeOverlay.v14.Material」のstyleを適用すればだいぶマシになるけどアクセントカラーのミスとかBoldがItalicになるバグとか某背景色のミスとかあるんでそれらも修正しとけよ
とか書いてあったので諦めて 23.0.2 を待つことにしました。
参考
ちなみに android.preference.PreferenceFragment
を使おうとしたところ
AppCompatActivity
と android.preference.PreferenceFragment
を組み合わせてみたところ、そもそも getSupportFragmentManager() と getFragmentManager() の違いがあるので Fragment の管理が不整合状態になってしまい back で戻ったりできませんでした(おしまい)