【问题标题】:String from string-array use in a .Java来自字符串数组的字符串在 .Java 中使用
【发布时间】:2016-01-08 19:34:14
【问题描述】:

我想为用户使用选项菜单来切换地图类型。 听到我已经使用的代码。

字符串.xml

    <string-array name="map_name">
        <item>Normal</item>
        <item>Hybrid</item>
        <item>Satellite</item>
        <item>Straßenkarte</item>
    </string-array>

    <string-array name="map_string">
        <item>"MAP_TYPE_NORMAL"</item>
        <item>"MAP_TYPE_HYBRID"</item>
        <item>"MAP_TYPE_SATELLITE"</item>
        <item>"MAP_TYPE_ROADMAP "</item>
       </string-array>

Einstellungen.java

public class Einstellungen extends PreferenceActivity
        implements Preference.OnPreferenceChangeListener {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.preferences);

        Preference map_string = findPreference(getString(R.array.map_string));
        map_string.setOnPreferenceChangeListener(this);
}

    @Override
    public boolean onPreferenceChange(Preference preference, Object value) {
        return false;
    }
}

现在我需要一些后勤:

MapsActivity.java

                        public void onMapReady(final GoogleMap googleMap) {
                            String mst = getResources().getString(R.array.map_string);
                            googleMap.setMyLocationEnabled(true);
                            googleMap.setMapType(GoogleMap.mst);

我想我脑子里有一个很大的错误。 谁能给我一个后盾。

【问题讨论】:

    标签: android arrays string google-maps google-maps-api-3


    【解决方案1】:

    首先,不会

    String mst = getResources().getString(R.array.map_string);
    

    导致问题。您试图在字符串数组上获取字符串()并将其传递给字符串。

    【讨论】:

    • 是的,但我只希望用户从数组中选择。
    • 可能在您的 Einstenllungen 类中有一个字符串,该字符串已初始化为用户的选择,并且 OnPreferenceChangeListener 会更改该字符串的值。这可以通过singleton class 完成。然后,您可以在 onMapReady 调用中引用该字符串。我不确定这是否是您正在寻找的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2012-07-20
    • 1970-01-01
    • 1970-01-01
    • 2018-10-11
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    相关资源
    最近更新 更多