布局编辑器使用MapBox

时间:2017-02-09 16:26:43

标签: android android-layout android-studio mapbox

尝试在Android Studio中使用布局编辑器时出现以下错误:

Rendering Problems The following classes could not be instantiated:
- com.mapbox.mapboxsdk.maps.widgets.MyLocationView

代码工作正常,显示地图。这是布局编辑器严格的问题。

Github上的SSCCE:
https://github.com/emnrd-ito/LayoutEditorRenderProblem
(注意,为了运行代码,您需要在access_token中提供Map Box访问令牌。)

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:mapbox="http://schemas.android.com/apk/res-auto"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="testdemo.com.layouteditorrenderproblem.MainActivity">

    <!-- NYC Union Square: 40.73581, -73.99155 -->
    <com.mapbox.mapboxsdk.maps.MapView
        android:id="@+id/mapView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        mapbox:center_latitude="40.73581"
        mapbox:center_longitude="-73.99155"
        mapbox:style_url="mapbox://styles/mapbox/streets-v9"
        mapbox:zoom="17" />

</RelativeLayout>

编辑: 更多信息基于@cammace的答案:

原始依赖项:

compile('com.mapbox.mapboxsdk:mapbox-android-sdk:4.1.1@aar') {
    transitive = true
}
compile('com.mapbox.mapboxsdk:mapbox-android-services:1.3.1@aar') {
    transitive = true
}

更改为:

compile('com.mapbox.mapboxsdk:mapbox-android-sdk:4.2.1@aar')

仍然得到错误。

然后改为:

compile('com.mapbox.mapboxsdk:mapbox-android-sdk:5.0.0-beta.1@aar')

我收到的错误如下:

  

找不到与给定名称匹配的资源(在textColor处   值@ color / black`)。

<TextView
    android:text="@string/app_name"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/about_app_name"
    android:textStyle="bold"
    android:textColor="@color/black"
    android:textSize="@dimen/text_size_xxl"/>

1 个答案:

答案 0 :(得分:1)

您的项目似乎使用的是我们SDK的过时版本。此问题应在最新的稳定版和测试版中得到解决。请升级到4.2.15.0.0-beta.1,看看是否可以解决问题。