キー「map_mode」を使用して ListPreferenceを作成し、 MapActivity.javaで実際のマップ モードを設定したいと考えています。たとえば、[設定] 画面で [衛星] をクリックすると、マップ上で変更されます。
このsettings.xml (preference.xml)のような ListPreference セットアップがあります。
<PreferenceCategory
android:key="settings"
android:title="Settings" >
<CheckBoxPreference
android:defaultValue="true"
android:key="map_settings"
android:summary="Enable or Disable Map Settings"
android:title="Enable Map Settings" />
<ListPreference
android:defaultValue="Map"
android:dependency="map_settings"
android:entries="@array/mapMode"
android:entryValues="@array/mapModeValues"
android:key="map_mode"
android:summary="Change the display of the map"
android:title="Map Mode" />
</PreferenceCategory>
「map_mode」は、このarrays.xmlから配列値を読み取ります。
<string-array name="mapMode">
<item name="Map">Map</item>
<item name="Satellite">Satellite</item>
<item name="Traffic">Traffic</item>
</string-array>
<string-array name="mapModeValues">
<item name="Map">Map</item>
<item name="Satellite">Satellite</item>
<item name="Traffic">Traffic</item>
</string-array>
ありがとうございました。
これがPreferenceScreenです。ユーザーがこれらのオプションのいずれかを押すと、MapActivity が更新されます。