12

公式ガイドラインに示されているように、設定を実装しました。

次のような 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)ましたが、アップボタンはメインの設定 (表示されるべきではない場所) にのみ表示され、サブ画面には表示されません。

公式ドキュメントでさえ、アクティブなアップボタンなしでサブスクリーンが表示されていることを疑問に思っています: サブ画面の設定

ドキュメントへのリンク:設定

どんな助けでも大歓迎です

4

3 に答える 3