Android高德地图自定义放大缩小控件
16lz
2021-12-04
高德地图sdk默认的地图放大缩小控件由于大小不太合适,因此我们又自己定义了一个
1.在布局文件中定义两个ImageView
"@+id/iv_zoom_large" android:clickable="true" android:src="@drawable/icon_zoom_large" android:layout_width="35dp" android:layout_height="35dp" android:scaleType="fitXY" /> "@+id/iv_zoom_small" android:clickable="true" android:src="@drawable/icon_zoom_small" android:layout_width="35dp" android:layout_height="35dp" android:scaleType="fitXY"
2.处理放大缩小的点击事件
@OnClick({R.id.iv_zoom_small, R.id.rl_scale_loc_compass}) public void onClick(View view) { Intent intent; CameraPosition cameraPosition; float mapZoom; LatLng mapTarget; switch (view.getId()) { case R.id.iv_zoom_large: cameraPosition = aMap.getCameraPosition(); mapZoom = cameraPosition.zoom; mapTarget = cameraPosition.target; Log.d(TAG, "onClick: large"+cameraPosition.target.latitude+":"+mapZoom); scaleLargeMap(mapTarget, ++mapZoom); break; case R.id.iv_zoom_small: cameraPosition = aMap.getCameraPosition(); mapZoom = cameraPosition.zoom; mapTarget = cameraPosition.target; Log.d(TAG, "onClick: small"+cameraPosition.target.latitude+":"+mapZoom); scaleLargeMap(mapTarget,--mapZoom); break; case R.id.rl_scale_loc_compass: break; } } public void scaleLargeMap(LatLng nowLocation,float scaleValue) { aMap.animateCamera(CameraUpdateFactory.newLatLngZoom(nowLocation, scaleValue));// aMap.moveCamera(); }
更多相关文章
- ImageView的属性android:scaleType
- 自定义Android应用程序标题条
- Android日志系统分析之日志设备驱动程序代码阅读
- android 自带的主题 theme 的使用
- 自定义RadioButton 文字在下,图片在上
- android 自定义加减按钮
- android AlertDialog 弹窗自定义布局 点击外部不关闭弹窗
- 自定义progressbar使用图片
- Android(安卓)VectorDrawable与SVG