wjc
2023-06-07 e0abee7b6ab08462f1f5a94e356ddf84f2eb3271
2023年06月07日16:41:22

备份一下代码
7个文件已添加
7个文件已修改
391 ■■■■ 已修改文件
.idea/misc.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java 122 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/enums/ShowMsgType.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/widget/LoadingDialog.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/drawable/bg_load_dialog.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/drawable/loading.png 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/drawable/progress_small.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/loading_alert.xml 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/values/colors.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/values/strings.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/values/themes.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/misc.xml
@@ -6,6 +6,9 @@
        <entry key="../../../../../layout/custom_preview.xml" value="0.22923076923076924" />
        <entry key="../../../.gradle/caches/transforms-2/files-2.1/7c2cbaa925629e10707989293f119941/jetified-zxing-android-embedded-3.4.0/res/layout/zxing_barcode_scanner.xml" value="0.20625" />
        <entry key="../../../.gradle/caches/transforms-2/files-2.1/7c2cbaa925629e10707989293f119941/jetified-zxing-android-embedded-3.4.0/res/layout/zxing_capture.xml" value="0.20625" />
        <entry key="app/src/main/res/drawable/bg_load_dialog.xml" value="0.1275" />
        <entry key="app/src/main/res/drawable/progress_small.xml" value="0.1275" />
        <entry key="app/src/main/res/drawable/progress_small1.xml" value="0.1275" />
        <entry key="app/src/main/res/layout/activity_1.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/activity_123.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/activity_capture.xml" value="0.20625" />
@@ -16,6 +19,8 @@
        <entry key="app/src/main/res/layout/fragment_house_list.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/fragment_me.xml" value="0.1" />
        <entry key="app/src/main/res/layout/frgment_house_list_line.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/loading_alert.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/loading_alert1.xml" value="0.1" />
        <entry key="app/src/main/res/layout/toolbar_top_view_52.xml" value="0.20625" />
        <entry key="app/src/main/res/layout/toolbar_top_view_53.xml" value="0.20625" />
        <entry key="third-zxing/src/main/res/drawable/transparent_divider.xml" value="0.1275" />
app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
@@ -1,20 +1,31 @@
package com.hdl.photovoltaic.base;
import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.WindowManager;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.listener.BaseView;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.widget.LoadingDialog;
public abstract class BaseActivity extends AppCompatActivity implements BaseView {
    private LoadingDialog loadingDialog;
    protected Activity _mActivity;
    @Override
@@ -35,10 +46,55 @@
    }
    /**
     * 获取LoadingDialog
     *
     * @return LoadingDialog
     */
    protected LoadingDialog getLoadingDialog() {
        if (loadingDialog == null && _mActivity != null) {
            loadingDialog = new LoadingDialog(_mActivity, R.style.Custom_AlertDialog);
        }
        return loadingDialog;
    }
    /**
     * 开始Loading
     */
    protected void showLoading() {
        getLoadingDialog().start();
    }
    /**
     * 开始Loading
     *
     * @param mes 自定义文本
     */
    protected void showLoading(String mes) {
        getLoadingDialog().start();
        getLoadingDialog().setText(mes);
    }
    /**
     * 停止隐藏Loading
     */
    protected void hideLoading() {
        HdlThreadLogic.runMainThread(new Runnable() {
            @Override
            public void run() {
                if (loadingDialog != null && loadingDialog.isShowing()) {
                    loadingDialog.stop();
                }
            }
        }, null, null);
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        //隐藏Loading
        hideLoading();
    }
app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java
@@ -16,7 +16,10 @@
import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.Lifecycle;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.listener.BaseView;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.widget.LoadingDialog;
import org.greenrobot.eventbus.EventBus;
@@ -27,9 +30,7 @@
    private boolean isFirst = true;
    protected FragmentActivity _mActivity;
    protected View mContainerView;
//    private LoadingDialog loadingDialog;
//    private LoadingDialog loadingGetDataDialog;
//    private DeviceLoadingDialog deviceLoadingDialog;
    private LoadingDialog loadingDialog;
    @Override
    public void onAttach(@NonNull Context context) {
@@ -99,6 +100,8 @@
        super.onDestroyView();
        _mActivity = null;
        isFirst = true;
        //隐藏Loading
        hideLoading();
//        unregisterEventBus();
    }
@@ -154,118 +157,51 @@
        }
    }
    /* *//**
    /**
     * 获取LoadingDialog
     *
     * @return
     *//*
     * @return LoadingDialog
     */
    protected LoadingDialog getLoadingDialog() {
        if (loadingDialog == null && _mActivity != null) {
            loadingDialog = new LoadingDialog(_mActivity, R.style.loading_dialog);
            loadingDialog = new LoadingDialog(_mActivity, R.style.Custom_AlertDialog);
        }
        return loadingDialog;
    }
    public LoadingDialog getLoadingGetDataDialog() {
        if (loadingGetDataDialog == null && _mActivity != null) {
            loadingGetDataDialog = new LoadingDialog(_mActivity, R.style.loading_dialog);
        }
        return loadingGetDataDialog;
    }
    *//**
     * 获取DeviceLoadingDialog
     *
     * @return
     *//*
    protected DeviceLoadingDialog getDeviceLoadingDialog() {
        if (deviceLoadingDialog == null && _mActivity != null) {
            deviceLoadingDialog = new DeviceLoadingDialog(_mActivity, R.style.loading_dialog);
        }
        return deviceLoadingDialog;
    }
    *//**
    /**
     * 开始Loading
     *//*
    public void showLoading() {
     */
    protected void showLoading() {
        getLoadingDialog().start();
    }
    *//**
    /**
     * 开始Loading
     *//*
    public void showDeviceLoading() {
        getDeviceLoadingDialog().start();
    }
    *//**
     * 开始Loading
     *//*
     *
     * @param mes 自定义文本
     */
    protected void showLoading(String mes) {
        getLoadingDialog().start();
        getLoadingDialog().setText(mes);
    }
    *//**
     * 开始Loading
     *//*
    protected void showGetDataLoading(String mes) {
        getLoadingGetDataDialog().startTouchNotGone();
        getLoadingGetDataDialog().setText(mes);
    }
    *//**
     * 开始Loading
     *//*
    protected void showDeviceLoading(String mes) {
        getDeviceLoadingDialog().start();
        getDeviceLoadingDialog().setText(mes);
    }
    *//**
     * 停止隐藏Loading
     *//*
    protected void hideLoading() {
        if (loadingDialog != null && loadingDialog.isShowing()) {
            loadingDialog.stop();
        }
    }
    *//**
     * 停止隐藏Loading
     *//*
    protected void hideGetDataLoading() {
        if (loadingGetDataDialog != null && loadingGetDataDialog.isShowing()) {
            loadingGetDataDialog.stop();
        }
    }
    */
    /**
     * 停止隐藏Loading
     *//*
    protected void hideDeviceLoading() {
        if (deviceLoadingDialog != null && deviceLoadingDialog.isShowing()) {
            deviceLoadingDialog.stop();
        }
    }*/
    //用于popwindow显示隐藏时候背景的颜色更换
    protected void backgroundAlpha(float bgAlpha) {
        if (_mActivity != null) {
            WindowManager.LayoutParams lp = _mActivity.getWindow().getAttributes();
            _mActivity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
            lp.alpha = bgAlpha; //0.0-1.0
            _mActivity.getWindow().setAttributes(lp);
        }
     */
    protected void hideLoading() {
        HdlThreadLogic.runMainThread(new Runnable() {
            @Override
            public void run() {
                if (loadingDialog != null && loadingDialog.isShowing()) {
                    loadingDialog.stop();
                }
            }
        }, null, null);
    }
    public static boolean isZh(Context context) {
        Locale locale = context.getResources().getConfiguration().locale;
        String language = locale.getLanguage();
app/src/main/java/com/hdl/photovoltaic/enums/ShowMsgType.java
New file
@@ -0,0 +1,12 @@
package com.hdl.photovoltaic.enums;
/**
 * 信息显示的类型
 */
public enum ShowMsgType {
    Normal,//普通提示类型
    Confirm,//确认类型
    Error,//错误类型
    Tip,//Tip类型
    Remind, //提醒类型
}
app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
New file
@@ -0,0 +1,22 @@
package com.hdl.photovoltaic.other;
/**
 * 登陆界面的逻辑
 */
public class HdlAccountLogic {
    private static volatile HdlAccountLogic sHdlAccountLogic;
    public static synchronized HdlAccountLogic getInstance() {
        if (sHdlAccountLogic == null) {
            synchronized (HdlAccountLogic.class) {
                if (sHdlAccountLogic == null) {
                    sHdlAccountLogic = new HdlAccountLogic();
                }
            }
        }
        return sHdlAccountLogic;
    }
}
app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
@@ -2,6 +2,7 @@
import android.os.Bundle;
import android.os.SystemClock;
import android.text.Editable;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
@@ -12,6 +13,8 @@
import android.text.style.ForegroundColorSpan;
import android.util.Log;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.RotateAnimation;
import android.widget.TextView;
@@ -156,7 +159,7 @@
        viewBinding.homeLoginExperienceTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(MyPowerStationActivity.class);
                //startActivity(MyPowerStationActivity.class);
            }
        });
app/src/main/java/com/hdl/photovoltaic/widget/LoadingDialog.java
New file
@@ -0,0 +1,74 @@
package com.hdl.photovoltaic.widget;
import android.app.Dialog;
import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.WindowManager;
import android.widget.TextView;
import com.hdl.photovoltaic.R;
public class LoadingDialog extends Dialog {
    private TextView content;
    public LoadingDialog(Context context) {
        super(context);
        init(context);
    }
    public LoadingDialog(Context context, int theme) {
        super(context, theme);
        init(context);
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
    private void init(Context context) {
        setCancelable(true);//系统后退可以取消
        setCanceledOnTouchOutside(false);
        setContentView(R.layout.loading_alert);
        content = (TextView) findViewById(R.id.load_content_tv);
        WindowManager.LayoutParams params = getWindow().getAttributes();
        params.width = WindowManager.LayoutParams.WRAP_CONTENT;
        params.height = WindowManager.LayoutParams.WRAP_CONTENT;
        getWindow().setAttributes(params);
//        content.setText(R.string.device_加载中);
    }
    public void setText(String mes) {
        if (content != null && !TextUtils.isEmpty(mes)) {
            content.setText(mes);
        }
    }
    public String getTest() {
        return content.getText().toString().trim();
    }
    public void start() {
        if (!this.isShowing()) {
            this.show();
        }
    }
    //点击外部不关闭
    public void startTouchNotGone() {
        if (!this.isShowing()) {
            this.show();
            setCancelable(true);
            setCanceledOnTouchOutside(false);
        }
    }
    public void stop() {
        this.dismiss();
        this.cancel();
    }
}
app/src/main/res/drawable/bg_load_dialog.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="@color/text_60000000" />
    <corners android:radius="4dp" />
</shape>
app/src/main/res/drawable/loading.png
app/src/main/res/drawable/progress_small.xml
New file
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromDegrees="0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:toDegrees="1440"
    >
    <shape
        android:innerRadiusRatio="3"
        android:shape="ring"
        android:thicknessRatio="8"
        android:useLevel="false">
        <gradient
            android:centerColor="#FFFFFF"
            android:centerY="0.50"
            android:endColor="#FFFFFF"
            android:startColor="#000000"
            android:type="sweep"
            android:useLevel="false" />
    </shape>
</rotate>
app/src/main/res/layout/loading_alert.xml
New file
@@ -0,0 +1,42 @@
<?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:layout_width="wrap_content"
    android:layout_height="85dp"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/bg_load_dialog"
    android:maxWidth="300dp"
    android:minWidth="@dimen/dp_100">
    <ProgressBar
        android:id="@+id/load_pb"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_centerInParent="true"
        android:layout_marginTop="@dimen/dp_10"
        android:indeterminateDrawable="@drawable/progress_small"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
    <TextView
        android:id="@+id/load_content_tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="@dimen/dp_10"
        android:layout_marginTop="@dimen/dp_10"
        android:layout_marginRight="@dimen/dp_10"
        android:layout_marginBottom="@dimen/dp_10"
        android:maxLines="1"
        android:text="@string/device_加载中"
        android:textColor="@color/text_FFFFFFFF"
        android:textSize="@dimen/text_12"
        app:layout_constraintEnd_toEndOf="@+id/load_pb"
        app:layout_constraintStart_toStartOf="@+id/load_pb"
        app:layout_constraintTop_toBottomOf="@+id/load_pb"
        />
</androidx.constraintlayout.widget.ConstraintLayout>
app/src/main/res/values/colors.xml
@@ -17,6 +17,7 @@
    <color name="text_25000000">#25000000</color>
    <color name="text_40000000">#40000000</color>
    <color name="text_65000000">#65000000</color>
    <color name="text_60000000">#60000000</color>
    <color name="text_90000000">#90000000</color>
    <color name="text_FF000000">#FF000000</color>
    <color name="text_E1E1E1">#E1E1E1</color>
app/src/main/res/values/strings.xml
@@ -43,6 +43,7 @@
    <string name="my_power_station_故障">故障</string>
    <string name="my_power_station_运行">运行</string>
    <string name="device_手动连接">手动连接</string>
    <string name="device_加载中">加载中...</string>
    <!--我的-->
app/src/main/res/values/themes.xml
@@ -19,6 +19,7 @@
        <item name="windowNoTitle">true</item>
    </style>
    <style name="Theme.PhotovoltaicDebug.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
    <style name="Theme.PhotovoltaicDebug.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
@@ -27,4 +28,26 @@
        <item name="fullscreenBackgroundColor">@color/light_blue_600</item>
        <item name="fullscreenTextColor">@color/light_blue_A200</item>
    </style>
    <style name="Custom_AlertDialog">
        <!--背景颜色及和透明程度-->
        <item name="android:windowBackground">@android:color/transparent</item>
        <!--是否去除标题 指dialog弹框标题-->
        <item name="android:windowNoTitle">true</item>
        <!--是否去除边框 -->
        <item name="android:windowFrame">@null</item>
        <!--是否模糊-->
        <item name="android:backgroundDimEnabled">true</item>
        <!--背景透明度 指界面透明度-->
        <item name="android:backgroundDimAmount">0.6</item>
        <!--是否浮现在activity之上-->
        <item name="android:windowIsFloating">false</item>
        <!--显示通知栏-->
        <item name="android:windowActionBar">false</item>
        <!--        <item name="android:windowIsTranslucent">false</item>:是否半透明-->
        <!--        <item name="android:windowNoTitle">true</item>:是否显示title-->
        <!--        <item name="android:windowBackground">@drawable/dia_bg</item>:设置dialog的背景-->
    </style>
</resources>