我想制作一个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);
答案 0 :(得分: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);