From 73b3585a9dd3f745f020fe24796e50031b41a811 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 15 六月 2023 21:23:09 +0800
Subject: [PATCH] 2023年06月15日21:23:00
---
app/src/main/java/com/hdl/photovoltaic/utils/KeyboardStateObserverUtils.java | 15 ++--
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java | 29 ++++++---
app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationDialog.java | 15 +++++
app/src/main/res/layout/activity_home_login.xml | 2
app/src/main/res/layout/loading_confirm_input.xml | 1
app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java | 54 ++++++++++++++---
app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java | 1
app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java | 21 +++---
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java | 31 +++++-----
.idea/misc.xml | 4 +
10 files changed, 119 insertions(+), 54 deletions(-)
diff --git a/.idea/misc.xml b/.idea/misc.xml
index fb7beae..106e635 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -3,8 +3,12 @@
<component name="DesignSurface">
<option name="filePathToZoomLevelMap">
<map>
+ <entry key="../../../../../layout/custom_preview.xml" value="0.22314814814814815" />
<entry key="app/src/main/res/layout/activity_home_login.xml" value="0.10030395136778116" />
+ <entry key="app/src/main/res/layout/activity_my_power_station.xml" value="0.10030395136778116" />
+ <entry key="app/src/main/res/layout/fragment_house_list.xml" value="0.10030395136778116" />
<entry key="app/src/main/res/layout/fragment_me.xml" value="0.10030395136778116" />
+ <entry key="app/src/main/res/layout/loading_confirm_input.xml" value="0.10030395136778116" />
<entry key="app/src/main/res/layout/toolbar_top_view_52.xml" value="0.10030395136778116" />
</map>
</option>
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
index 8a6c030..4b03a84 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
@@ -48,26 +48,27 @@
initView();
//鍒濆鍖栫晫闈㈢洃鍚櫒
initEvent();
- ///**/鍦ㄧ晫闈腑浣跨敤锛�
+ //鍦ㄧ晫闈腑浣跨敤
// KeyboardStateObserverUtils.getKeyboardStateObserver(_mActivity).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() {
// @Override
-//
-// public void onKeyboardShow() {
+// public void onKeyboardShow(int h) {
// //Toast.makeText(MainActivity.this,"閿洏寮瑰嚭",Toast.LENGTH_SHORT).show();
// ConstraintSet cs = new ConstraintSet();
-// cs.connect(R.id.home_login_title_tv, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 400);//
+// cs.clone(viewBinding.homeLoginParentCl);
+//// (viewBinding.loadingConfirmationRl.getTop()-dip2px(h))
+// cs.connect(R.id.home_login_tv, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, h);//
// //搴旂敤绾︽潫
-// cs.applyTo(viewBinding.parentCl);
-//// viewBinding.agreementLl.setVisibility(View.GONE);
+// cs.applyTo(viewBinding.homeLoginParentCl);
// }
//
// @Override
//
-// public void onKeyboardHide() {
-// //Toast.makeText(MainActivity.this,"閿洏鏀跺洖",Toast.LENGTH_SHORT).show();
+// public void onKeyboardHide(int h) {
// ConstraintSet cs = new ConstraintSet();
-// cs.connect(R.id.home_login_title_tv, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 400);//
-// cs.applyTo(viewBinding.parentCl);
+// cs.clone(viewBinding.homeLoginParentCl);
+// cs.connect(R.id.home_login_tv, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, h);//
+// //搴旂敤绾︽潫
+// cs.applyTo(viewBinding.homeLoginParentCl);
// }
//
// });
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
index a027d30..0bbf25e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
@@ -28,6 +28,7 @@
@Override
public void onBindView(Bundle savedInstanceState) {
+ getWindow().setStatusBarColor(getColor(R.color.text_245EC3));
//鍒濆鍖�
initView();
//鍒濆鍖栫晫闈㈢洃鍚櫒
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
index 45b0636..3c595e7 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -66,13 +66,14 @@
viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- String path = "pages/powerStationDetail/index";
-// HDLUniMP.UNI_PATH_MILLIMETER;//鍘熺敓閫氱煡灏忕▼搴忓湴鍧�
- HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
- uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_HOME_DETAILS);
- JSONObject json = uniCallBackBaseBean.getJSONObject(uniCallBackBaseBean);
-
-// HDLUniMPSDKManager.getInstance().openUniMP(HDLUniMP.UNI_APP_ID, path, json, new HDLUniMPSDKManager.IOnOtherUniMPEventCallBack() {
+// String path = "pages/powerStationDetail/index";
+//// HDLUniMP.UNI_PATH_MILLIMETER;//鍘熺敓閫氱煡灏忕▼搴忓湴鍧�
+// HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
+// uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_HOME_DETAILS);
+// uniCallBackBaseBean.setPath(path);
+// JSONObject jsonObject = uniCallBackBaseBean.getJSONObject();
+//
+// HDLUniMPSDKManager.getInstance().openUniMP(HDLUniMP.UNI_APP_ID, path, jsonObject, new HDLUniMPSDKManager.IOnOtherUniMPEventCallBack() {
// @Override
// public void onOtherUniMPEventReceive(String appid, String event, Object data, DCUniMPJSCallback callback) {
//
@@ -96,14 +97,14 @@
// startActivity(FastScanActivity.class);
// }
-// ConfirmationInputDialog confirmationInputDialog =new ConfirmationInputDialog(_mActivity);
-// confirmationInputDialog.show();
-// confirmationInputDialog.setNoOnclickListener(new ConfirmationInputDialog.onNoOnclickListener() {
-// @Override
-// public void Cancel() {
-// confirmationInputDialog.dismiss();
-// }
-// });
+ ConfirmationInputDialog confirmationInputDialog = new ConfirmationInputDialog(_mActivity);
+ confirmationInputDialog.show();
+ confirmationInputDialog.setNoOnclickListener(new ConfirmationInputDialog.onNoOnclickListener() {
+ @Override
+ public void Cancel() {
+ confirmationInputDialog.dismiss();
+ }
+ });
}
});
diff --git a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
index 2d35ae6..4fb75f6 100644
--- a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
@@ -1,6 +1,5 @@
package com.hdl.photovoltaic.uni;
-import androidx.annotation.NonNull;
import com.google.gson.Gson;
@@ -51,6 +50,7 @@
public static class UniCallBackBaseBean implements Serializable {
+ private String path;//鎵撳紑灏忕▼搴忚矾寰�(鏆傛椂鐢ㄤ笉涓�)
private String code;//鐘舵�佺爜
private String mes;//淇℃伅鎻忚堪
private String topic;//鏆傛椂鐢ㄤ笉涓�
@@ -109,15 +109,26 @@
this.type = type;
}
- public JSONObject getJSONObject(Object obj) {
- Gson gson = new Gson();
- String json = gson.toJson(obj);
- com.alibaba.fastjson.JSONObject d=new com.alibaba.fastjson.JSONObject();
- JSONObject jsonObject = gson.fromJson(json, JSONObject.class);
- if (jsonObject == null) {
- jsonObject = new JSONObject();
+ public String getPath() {
+ return path == null ? "" : path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ /**
+ * 褰撳墠瀵硅薄杞� JSONObject
+ *
+ * @return JSONObject
+ */
+ public JSONObject getJSONObject() {
+ try {
+ String json = new Gson().toJson(this);
+ return new JSONObject(json);
+ } catch (Exception e) {
+ return new JSONObject();
}
- return jsonObject;
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/utils/KeyboardStateObserverUtils.java b/app/src/main/java/com/hdl/photovoltaic/utils/KeyboardStateObserverUtils.java
index e94f1fc..408e86e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/utils/KeyboardStateObserverUtils.java
+++ b/app/src/main/java/com/hdl/photovoltaic/utils/KeyboardStateObserverUtils.java
@@ -17,7 +17,7 @@
}
- private View mChildOfContent;
+ private final View mChildOfContent;
private int usableHeightPrevious;//浣跨敤楂樺害
@@ -52,20 +52,20 @@
int usableHeightNow = computeUsableHeight();
if (usableHeightNow != usableHeightPrevious) {
- //鍙敤楂樺害鏃犻敭鐩�
+ //鑾峰彇鏁翠釜灞忓箷鐨勯珮搴�
int usableHeightSansKeyboard = mChildOfContent.getRootView().getHeight();
int heightDifference = usableHeightSansKeyboard - usableHeightNow;
if (heightDifference > (usableHeightSansKeyboard / 4)) {
if (listener != null) {
- listener.onKeyboardShow();
+ listener.onKeyboardShow(heightDifference);
}
} else {
if (listener != null) {
- listener.onKeyboardHide();
+ listener.onKeyboardHide(heightDifference);
}
@@ -87,19 +87,18 @@
private int computeUsableHeight() {
Rect r = new Rect();
- //鑾峰彇鍙绐楀彛
+ //鑾峰彇鍙互鏄剧ず鐨勫尯鍩�
mChildOfContent.getWindowVisibleDisplayFrame(r);
//Log.d(TAG,"rec bottom>" + r.bottom + " | rec top>" + r.top);
-
return (r.bottom - r.top);// 鍏ㄥ睆妯″紡涓嬶細 return r.bottom
}
public interface OnKeyboardVisibilityListener {
- void onKeyboardShow();
+ void onKeyboardShow(int h);
- void onKeyboardHide();
+ void onKeyboardHide(int h);
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationDialog.java
index bd45db1..8eca038 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationDialog.java
@@ -54,6 +54,9 @@
return;
}
titleStr = title;
+ if (viewBinding != null) {
+ viewBinding.loadingConfirmationTitleTv.setText(titleStr);
+ }
}
@@ -68,6 +71,12 @@
}
yesStr = confirm;
+
+ if (viewBinding != null) {
+ viewBinding.dialogConfirmTv.setText(yesStr);
+ }
+
+
}
/**
@@ -80,6 +89,9 @@
return;
}
noStr = cancel;
+ if (viewBinding != null) {
+ viewBinding.dialogCancelTv.setText(noStr);
+ }
}
@@ -93,6 +105,9 @@
return;
}
contentStr = content;
+ if (viewBinding != null) {
+ viewBinding.loadingConfirmationContentTv.setText(contentStr);
+ }
}
private void initEvent() {
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
index 2c81d80..16c6e59 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
@@ -33,7 +33,6 @@
private LoadingConfirmInputBinding viewBinding;
private String titleStr, yesStr, noStr;
-
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -48,26 +47,27 @@
initData();
//鍒濆鍖栫晫闈㈡帶浠剁殑浜嬩欢
initEvent();
-
- ///**/鍦ㄧ晫闈腑浣跨敤锛�
+ //鍦ㄧ晫闈腑浣跨敤
KeyboardStateObserverUtils.getKeyboardStateObserver((Activity) mContext).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() {
@Override
-
- public void onKeyboardShow() {
+ public void onKeyboardShow(int h) {
//Toast.makeText(MainActivity.this,"閿洏寮瑰嚭",Toast.LENGTH_SHORT).show();
ConstraintSet cs = new ConstraintSet();
- cs.connect(R.id.loading_confirmation_rl, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 40);//
+ cs.clone(viewBinding.loadingParentCl);
+// (viewBinding.loadingConfirmationRl.getTop()-dip2px(h))
+ cs.connect(R.id.loading_confirmation_rl, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, px2dip(h));//
//搴旂敤绾︽潫
-// cs.applyTo(viewBinding.contentBaseView);
-// viewBinding.agreementLl.setVisibility(View.GONE);
+ cs.applyTo(viewBinding.loadingParentCl);
}
@Override
- public void onKeyboardHide() {
- //Toast.makeText(MainActivity.this,"閿洏鏀跺洖",Toast.LENGTH_SHORT).show();
+ public void onKeyboardHide(int h) {
ConstraintSet cs = new ConstraintSet();
- cs.connect(R.id.loading_confirmation_rl, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 40);//
+ cs.clone(viewBinding.loadingParentCl);
+ cs.connect(R.id.loading_confirmation_rl, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, px2dip(h));//
+ //搴旂敤绾︽潫
+ cs.applyTo(viewBinding.loadingParentCl);
}
});
@@ -85,6 +85,9 @@
return;
}
titleStr = title;
+ if (viewBinding != null) {
+ viewBinding.loadingConfirmationTitleTv.setText(titleStr);
+ }
}
@@ -98,6 +101,10 @@
return;
}
yesStr = confirm;
+
+ if (viewBinding != null) {
+ viewBinding.dialogConfirmTv.setText(yesStr);
+ }
}
@@ -113,6 +120,9 @@
}
noStr = cancel;
+ if (viewBinding != null) {
+ viewBinding.dialogCancelTv.setText(noStr);
+ }
}
@@ -158,6 +168,9 @@
* 鍒濆鍖栫晫闈㈡帶浠剁殑鏄剧ず鏁版嵁
*/
private void initData() {
+ if (viewBinding == null) {
+ return;
+ }
//濡傛灉鐢ㄦ埛鑷畾浜唗itle鍜宮essage
if (!TextUtils.isEmpty(titleStr)) {
viewBinding.loadingConfirmationTitleTv.setText(titleStr);
@@ -209,4 +222,23 @@
void Confirm(String str);
}
+ /**
+ * 鏍规嵁鎵嬫満鐨勫垎杈ㄧ巼浠� dp 鐨勫崟浣� 杞垚涓� px(鍍忕礌)
+ */
+ public int dip2px(float dpValue) {
+ if (mContext == null) {
+ return 0;
+ }
+ final float scale = mContext.getResources().getDisplayMetrics().density;
+ return (int) (dpValue * scale + 0.5f);
+ }
+
+ /**
+ * 鏍规嵁鎵嬫満鐨勫垎杈ㄧ巼浠� px(鍍忕礌) 鐨勫崟浣� 杞垚涓� dp
+ */
+ public int px2dip(float pxValue) {
+ final float scale = mContext.getResources().getDisplayMetrics().density;
+ return (int) (pxValue / scale + 0.5f);
+ }
+
}
diff --git a/app/src/main/res/layout/activity_home_login.xml b/app/src/main/res/layout/activity_home_login.xml
index 1dba5cc..ca3341a 100644
--- a/app/src/main/res/layout/activity_home_login.xml
+++ b/app/src/main/res/layout/activity_home_login.xml
@@ -2,7 +2,7 @@
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/parent_cl"
+ android:id="@+id/home_login_parent_cl"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.hdl.photovoltaic.ui.HomeLoginActivity">
diff --git a/app/src/main/res/layout/loading_confirm_input.xml b/app/src/main/res/layout/loading_confirm_input.xml
index 9a9f89f..07653df 100644
--- a/app/src/main/res/layout/loading_confirm_input.xml
+++ b/app/src/main/res/layout/loading_confirm_input.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/loading_parent_cl"
android:layout_width="match_parent"
android:layout_height="match_parent">
--
Gitblit v1.8.0