无法导入Mapbox功能,尝试进行地理编码自动填充查询

时间:2017-04-03 02:26:32

标签: android import geocoding mapbox

让我解释一下我的问题。 就Mapbox处理而言,我真的是新手,但是我得到了非常好的体验。今天,我遇到了一个问题,我几个小时都无法解决,这与我从mapbox android服务库无法获得的一些导入有关。

我正在build.gradle文件中编译以下服务:

compile('com.mapbox.mapboxsdk:mapbox-android-sdk:5.0.1@aar') {
    transitive=true
}
compile ('com.mapbox.mapboxsdk:mapbox-android-geocoder:1.0.+@aar'){
    transitive=true
}
compile ('com.mapbox.mapboxsdk:mapbox-android-services:2.0.0-beta.1@aar'){
    transitive=true
}

一切都可以正常使用地图,它会显示地图,我可以添加标记,修改参数等等。我的问题是,当我尝试进行地理编码自动填充查询时,导入部分中的以下行标记为灰色,并且没有明显的原因,导入未正确完成。

import com.mapbox.services.android.geocoder.ui.GeocoderAutoCompleteView;
import com.mapbox.services.geocoding.v5.GeocodingCriteria;
import com.mapbox.services.geocoding.v5.models.CarmenFeature;

因此,在调用java类时,我遇到了一些与缺少引用相关的错误。

// Set up autocomplete widget
GeocoderAutoCompleteView autocomplete = (GeocoderAutoCompleteView) findViewById(R.id.query);
autocomplete.setAccessToken(MapboxAccountManager.getInstance().getAccessToken());
autocomplete.setType(GeocodingCriteria.TYPE_POI);
autocomplete.setOnFeatureListener(new GeocoderAutoCompleteView.OnFeatureListener() {
    @Override
    public void OnFeatureClick(CarmenFeature feature) {
        Position position = feature.asPosition();
        updateMap(position.getLatitude(), position.getLongitude());
    }
});

有什么想法吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

查看geocoding widget的新文档以及入门指南。这应该是您的XML文件:

<com.mapbox.services.android.ui.geocoder.GeocoderAutoCompleteView

机器人:ID = “@ + ID / autoCompleteWidget”   机器人:layout_width = “match_parent”   机器人:layout_height = “WRAP_CONTENT”   android:hint =“搜索位置”   机器人:MAXLINES = “1”/&GT;

此外,您应升级为不使用测试版。稳定的2.0.0已经发布。