diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - - - - - - - - - - - - - - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/src/main/res/drawable/ic_aim.xml b/app/src/main/res/drawable/ic_aim.xml new file mode 100644 index 0000000..48b3be5 --- /dev/null +++ b/app/src/main/res/drawable/ic_aim.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/src/main/res/drawable/ic_aim.xml b/app/src/main/res/drawable/ic_aim.xml new file mode 100644 index 0000000..48b3be5 --- /dev/null +++ b/app/src/main/res/drawable/ic_aim.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_minus.xml b/app/src/main/res/drawable/ic_minus.xml new file mode 100644 index 0000000..51162c7 --- /dev/null +++ b/app/src/main/res/drawable/ic_minus.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/src/main/res/drawable/ic_aim.xml b/app/src/main/res/drawable/ic_aim.xml new file mode 100644 index 0000000..48b3be5 --- /dev/null +++ b/app/src/main/res/drawable/ic_aim.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_minus.xml b/app/src/main/res/drawable/ic_minus.xml new file mode 100644 index 0000000..51162c7 --- /dev/null +++ b/app/src/main/res/drawable/ic_minus.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/activity_gis.xml b/app/src/main/res/layout/activity_gis.xml deleted file mode 100644 index 5028db4..0000000 --- a/app/src/main/res/layout/activity_gis.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/src/main/res/drawable/ic_aim.xml b/app/src/main/res/drawable/ic_aim.xml new file mode 100644 index 0000000..48b3be5 --- /dev/null +++ b/app/src/main/res/drawable/ic_aim.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_minus.xml b/app/src/main/res/drawable/ic_minus.xml new file mode 100644 index 0000000..51162c7 --- /dev/null +++ b/app/src/main/res/drawable/ic_minus.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/activity_gis.xml b/app/src/main/res/layout/activity_gis.xml deleted file mode 100644 index 5028db4..0000000 --- a/app/src/main/res/layout/activity_gis.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/layout/activity_map.xml b/app/src/main/res/layout/activity_map.xml index fdd698e..9318edb 100644 --- a/app/src/main/res/layout/activity_map.xml +++ b/app/src/main/res/layout/activity_map.xml @@ -19,5 +19,46 @@ android:id="@+id/mapBoxView" android:layout_width="match_parent" android:layout_height="match_parent" /> + + + + + + + + + diff --git a/app/build.gradle b/app/build.gradle index 204d170..1075459 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,7 +68,5 @@ implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.1' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0' implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0' - //ArcGis - implementation 'com.esri.arcgisruntime:arcgis-android:100.3.0' implementation 'com.sdsmdg.tastytoast:tastytoast:0.1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a5cf12..6a15228 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -13,11 +13,6 @@ - - - - locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + expandMapView.setChangeAlphaWhenPress(true); + minusMapView.setChangeAlphaWhenPress(true); + removeToLocalView.setChangeAlphaWhenPress(true); + HashMap locationMap = (HashMap) getIntent().getSerializableExtra("locationMap"); + if (locationMap != null) { + latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); + } mapBoxView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { map = mapboxMap; - /////////////////////////// - if (locationMap != null) { - LatLng latLng = new LatLng(locationMap.get("latitude"), locationMap.get("longitude")); - //添加标注 - mapboxMap.addMarker(new MarkerOptions() - .position(latLng) - .title("I'm Here")); - //移到定位点 - CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(14).tilt(20).build(); - map.animateCamera(CameraUpdateFactory.newCameraPosition(position)); - } map.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - UiSettings uiSettings = mapboxMap.getUiSettings(); - uiSettings.setCompassMargins(0, QMUIDisplayHelper.dp2px(context, 120), QMUIDisplayHelper.dp2px(context, 40), 0); - LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, mapboxMap, style); + UiSettings uiSettings = map.getUiSettings(); + uiSettings.setCompassEnabled(true); + uiSettings.setCompassGravity(Gravity.TOP | Gravity.END); + uiSettings.setCompassMargins(0, 20, 20, 0); + LocalizationPlugin localizationPlugin = new LocalizationPlugin(mapBoxView, map, style); localizationPlugin.setMapLanguage(MapLocale.SIMPLIFIED_CHINESE); - + } + }); + /** + * 添加标注和移到定位点 + * */ + map.addMarker(new MarkerOptions().position(latLng).title("I'm Here")); + CameraPosition position = new CameraPosition.Builder().target(latLng).zoom(zoomScale).tilt(20).build(); + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + /** + * 地图点击事件 + * */ + mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() { + @Override + public boolean onMapClick(@NonNull LatLng point) { + map.addMarker(new MarkerOptions().position(point).title(new Gson().toJson(point))); + //TODO 点击地图获取到经纬度,传递给后台,获取到点附近的部件属性列表 + return true; } }); } @@ -126,9 +152,37 @@ } + @OnClick({R.id.expandMapView, R.id.minusMapView, R.id.removeToLocalView}) @Override public void onClick(View v) { - + CameraPosition.Builder builder = new CameraPosition.Builder().target(latLng).tilt(20); + CameraPosition position = null; + switch (v.getId()) { + case R.id.expandMapView: + zoomScale++; + if (zoomScale > MapboxConstants.MAXIMUM_ZOOM) { + ToastHelper.showToast("已经达到最大放大级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.minusMapView: + zoomScale--; + if (zoomScale < MapboxConstants.MINIMUM_ZOOM) { + ToastHelper.showToast("已经达到最小缩小级别", ToastHelper.WARING); + } else { + position = builder.zoom(zoomScale).build(); + } + break; + case R.id.removeToLocalView: + position = builder.zoom(zoomScale).build(); + break; + default: + break; + } + if (position != null) { + map.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + } } @Override diff --git a/app/src/main/res/drawable/bg_button.xml b/app/src/main/res/drawable/bg_button.xml new file mode 100644 index 0000000..84dbc9e --- /dev/null +++ b/app/src/main/res/drawable/bg_button.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_add_black.xml b/app/src/main/res/drawable/ic_add_black.xml index 5697f43..4a7fb89 100644 --- a/app/src/main/res/drawable/ic_add_black.xml +++ b/app/src/main/res/drawable/ic_add_black.xml @@ -1,9 +1,9 @@ diff --git a/app/src/main/res/drawable/ic_aim.xml b/app/src/main/res/drawable/ic_aim.xml new file mode 100644 index 0000000..48b3be5 --- /dev/null +++ b/app/src/main/res/drawable/ic_aim.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_minus.xml b/app/src/main/res/drawable/ic_minus.xml new file mode 100644 index 0000000..51162c7 --- /dev/null +++ b/app/src/main/res/drawable/ic_minus.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/activity_gis.xml b/app/src/main/res/layout/activity_gis.xml deleted file mode 100644 index 5028db4..0000000 --- a/app/src/main/res/layout/activity_gis.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/layout/activity_map.xml b/app/src/main/res/layout/activity_map.xml index fdd698e..9318edb 100644 --- a/app/src/main/res/layout/activity_map.xml +++ b/app/src/main/res/layout/activity_map.xml @@ -19,5 +19,46 @@ android:id="@+id/mapBoxView" android:layout_width="match_parent" android:layout_height="match_parent" /> + + + + + + + + + diff --git a/build.gradle b/build.gradle index 436d01f..d149edc 100644 --- a/build.gradle +++ b/build.gradle @@ -23,10 +23,6 @@ google() jcenter() maven { - //url 'https://esri.bintray.com/arcgis'(网站拒绝请求) - url 'https://esri.jfrog.io/artifactory/arcgis'//(新网站) - } - maven { url 'https://api.mapbox.com/downloads/v2/releases/maven' authentication { basic(BasicAuthentication)