公式ガイドラインに示されているように、設定を実装しました。
次のような PreferenceFragment を作成する PreferenceActivity があります。
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
Bundle extras = getIntent().getExtras();
if (extras != null)
{
Bundle bundle = new Bundle();
_widgetID = extras.getInt(GlobalSettings.EXTRA_WIDGET_ID);
bundle.putInt(GlobalSettings.EXTRA_WIDGET_ID, _widgetID);
WidgetSettingsFragment fragment = new WidgetSettingsFragment();
fragment.setArguments(bundle);
getFragmentManager().beginTransaction().replace(android.R.id.content,
fragment).commit();
}
}
PreferenceFragment はリソースから設定をロードし、次のような設定サブスクリーンを含みます。
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<!-- opens a subscreen of settings -->
<PreferenceScreen
android:key="button_voicemail_category_key"
android:title="@string/voicemail"
android:persistent="false">
<ListPreference
android:key="button_voicemail_provider_key"
android:title="@string/voicemail_provider" ... />
<!-- opens another nested subscreen -->
<PreferenceScreen
android:key="button_voicemail_setting_key"
android:title="@string/voicemail_settings"
android:persistent="false">
...
</PreferenceScreen>
<RingtonePreference
android:key="button_voicemail_ringtone_key"
android:title="@string/voicemail_ringtone_title"
android:ringtoneType="notification" ... />
...
</PreferenceScreen>
...
</PreferenceScreen>
up-Button
これはこれまでのところうまくいきますが、設定サブスクリーンが表示されているときにアクションバーにを入れたいと思います。それを達成する方法はありますか?
アクティビティに設定しようとしsetDisplayHomeAsUpEnabled(true)
ましたが、アップボタンはメインの設定 (表示されるべきではない場所) にのみ表示され、サブ画面には表示されません。
公式ドキュメントでさえ、アクティブなアップボタンなしでサブスクリーンが表示されていることを疑問に思っています:
ドキュメントへのリンク:設定
どんな助けでも大歓迎です