【问题标题】:setMapType for google map V2谷歌地图 V2 的 setMapType
【发布时间】:2013-08-08 18:04:26
【问题描述】:

我想做一个 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);

【问题讨论】:

    标签: android google-maps preferenceactivity


    【解决方案1】:

    阅读偏好,映射到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);
    

    【讨论】:

    • 谢谢,没关系。解决方案没有那么复杂。我现在有另一个问题。我必须调用 getPrefs();单击设置按钮时调用该函数,但从首选项窗口返回时未确认设置。
    • @user1856182 onResume 应该没问题。
    猜你喜欢
    • 1970-01-01
    • 2013-04-16
    • 2014-08-18
    • 2014-01-15
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多