ArcGIS runtime for Android

Arcgis runtime for Android 100.5

2020-07-16  本文已影响0人  _执_念__

(五) 绘制点、线、面、文字、图片

Arcgis没有提供指南针控件,如果需要,可以自定义一个,很简单

去阿里图标库下载一个能用的指南针如 指南针
放置在布局文件中
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <com.esri.arcgisruntime.mapping.view.MapView
        android:id="@+id/mapView"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/ivCompass"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:padding="5dp"
        android:layout_alignParentRight="true"
        android:layout_marginTop="10dp"
        android:layout_marginRight="20dp"
        android:src="@mipmap/ic_compass" />

监听地图旋转角度,指南针跟着转

private var lastBearing = 0f//指南针最后旋转角度
mapView.addMapRotationChangedListener {
            val bearing: Float =
                (360f - mapView.mapRotation).toFloat()
            //创建指南针旋转动画
            val rotateAnimation = RotateAnimation(
                lastBearing, bearing, Animation.RELATIVE_TO_SELF, 0.5f,
                Animation.RELATIVE_TO_SELF, 0.5f
            )
            rotateAnimation.fillAfter = true
            ivCompass.startAnimation(rotateAnimation)
            lastBearing = bearing
        }

点击指南针,地图角度回正

  ivCompass.setOnClickListener {
            mapView.setViewpointRotationAsync(0.0)
        }

这样就OK了

(七) GPS定位

上一篇 下一篇

猜你喜欢

热点阅读