From 5387cbaca4fea6bbf055e7b284821699546eb7e9 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 22 一月 2025 14:56:53 +0800
Subject: [PATCH] 1.视频播放兼容高低版本手机 2.优化工单icon 3.修复修改经纬度因js中添加了减少调用频率的代码导致的修改经纬度bug 4.修复了切换界面webView白屏的bug
---
app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java | 71 +++++++++++++++++++++++++++--------
1 files changed, 55 insertions(+), 16 deletions(-)
diff --git a/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java b/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java
index c414864..39ec637 100644
--- a/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java
+++ b/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java
@@ -114,6 +114,8 @@
public double centerLng;
public double centerLat;
+ MarkerBean mMarkerBean;
+
@Override
public void onAttach(@NonNull Context context) {
super.onAttach(context);
@@ -125,6 +127,7 @@
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ setRetainInstance(true);
Log.i(TAG, "onCreate");
mInspectionState = SharedPreferencesHelper.getInstance(this.getContext()).get(CommonKeyName.inspectionState, 0);
}
@@ -253,7 +256,6 @@
}
}
-
/**
* 鑾峰彇鍙栨按鍙e垪琛�
*/
@@ -311,7 +313,11 @@
//宸℃鎸夐挳
binding.inspectButton.setOnClickListener(v -> {
if (XXPermissions.isGranted(MapFragment.this.getContext(), Permission.ACCESS_BACKGROUND_LOCATION)) {
- chageInspecState(InspectionUtils.STAT_INSPECTION_ONCLICK);
+ new ConfirmDialog(MapFragment.this.getActivity(), (confirmDialog, v1) -> {
+ chageInspecState(InspectionUtils.STAT_INSPECTION_ONCLICK);
+ confirmDialog.dismiss();
+ }).show();
+
} else {
TipUtil.show(MapFragment.this.getActivity(), "宸℃瀹氫綅闇�瑕佹偍閫夋嫨\"濮嬬粓鍏佽\"瀹氫綅淇℃伅锛屽惁鍒欐棤娉曞贰妫�銆�", new TipUtil.TipListener() {
@Override
@@ -739,6 +745,8 @@
});
binding.pointCenterImg.setVisibility(View.GONE);
binding.pointRL.setVisibility(View.GONE);
+ mMarkerBean.setLat(lat);
+ mMarkerBean.setLng(lng);
binding.lng.setText(lng);
binding.lat.setText(lat);
mWebView.evaluateJavascript("javascript:cancelPin()", value -> {
@@ -770,20 +778,20 @@
public void onNext(BaseResponse<MarkerResult> t) {
if (t.isSuccess()) {
MarkerResult result = t.getContent();
- MarkerBean markerBean = new MarkerBean();
- markerBean.setId(result.getId());
- markerBean.setLng(result.getLng());
- markerBean.setLat(result.getLat());
- markerBean.setBlockId(result.getBlockId());
- markerBean.setName(result.getName());
- markerBean.setRemarks(result.getRemarks());
- markerBean.setTownId(result.getTownId());
- markerBean.setVillageId(result.getVillageId());
- markerBean.setCountyId(result.getCountyId());
- markerBean.setAddress(result.getAddress());
- markerBean.setBlockName(result.getBlockName());
- markerBean.setDivideId(result.getDivideId());
- showMarker(markerBean);
+ mMarkerBean = new MarkerBean();
+ mMarkerBean.setId(result.getId());
+ mMarkerBean.setLng(result.getLng());
+ mMarkerBean.setLat(result.getLat());
+ mMarkerBean.setBlockId(result.getBlockId());
+ mMarkerBean.setName(result.getName());
+ mMarkerBean.setRemarks(result.getRemarks());
+ mMarkerBean.setTownId(result.getTownId());
+ mMarkerBean.setVillageId(result.getVillageId());
+ mMarkerBean.setCountyId(result.getCountyId());
+ mMarkerBean.setAddress(result.getAddress());
+ mMarkerBean.setBlockName(result.getBlockName());
+ mMarkerBean.setDivideId(result.getDivideId());
+ showMarker(mMarkerBean);
} else {
ToastUtil.showToast(MapFragment.this.getContext(), t.getMsg());
}
@@ -1024,5 +1032,36 @@
public void onDestroy() {
super.onDestroy();
LiveEventBus.get(CommonKeyName.locationData).removeObserver(locationObserver);
+ if (mWebView != null) {
+ mWebView.destroy();
+ }
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ mWebView.onResume();
+ mWebView.resumeTimers();
+ }
+
+ @Override
+ public void onPause() {
+ super.onPause();
+ mWebView.onPause();
+ mWebView.pauseTimers();
+ }
+
+ @Override
+ public void onSaveInstanceState(@NonNull Bundle outState) {
+ super.onSaveInstanceState(outState);
+ mWebView.saveState(outState);
+ }
+
+ @Override
+ public void onViewStateRestored(@Nullable Bundle savedInstanceState) {
+ super.onViewStateRestored(savedInstanceState);
+ if (savedInstanceState != null) {
+ mWebView.restoreState(savedInstanceState);
+ }
}
}
--
Gitblit v1.8.0