1

我想做一个 PreferenceActivity 并设置谷歌地图的地图类型。我看到它可以使用命令 mGoogleMap.setMapType(Googlemap.MAP_TYPE_NORMAL);

我如何使用 SharedPreferences 来做到这一点?

我在preferences.xml 中使用ListPreference 和一个值数组

 <string-array name="listValues">
 <item>"MAP_TYPE_NORMAL"</item>
 <item>"MAP_TYPE_HYBRID"</item>
 <item>"MAP_TYPE_TERRAIN"</item>
</string-array>

所以在主要活动中我做了一个函数来获取这些值。

private void getPrefs() {
        // Get the xml/preferences.xml preferences  
        SharedPreferences prefs = PreferenceManager
                        .getDefaultSharedPreferences(getBaseContext());

现在我如何将类型设置为参数

mGoogleMap.setMapType(Googlemap.arg);
4

1 回答 1

3

阅读首选项,映射到GoogleMap.MAP_TYPE_XXX并发送到GoogleMap.setMapType

String prefValue = prefs.getString(...);
int mapType;
if ("MAP_TYPE_NORMAL".equals(prefValue)) {
    mapType = GoogleMap.MAP_TYPE_NORMAL;
} else if (...) {
    ...
}
googleMap.setMapType(mapType);
于 2013-08-08T18:13:16.147 回答