wjc
2025-04-15 cdf49871675e42a5576f725a93eec7ca15294c6f
app/src/main/java/com/hdl/photovoltaic/ui/me/SetActivity.java
@@ -1,22 +1,30 @@
package com.hdl.photovoltaic.ui.me;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import androidx.annotation.Nullable;
import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivitySetBinding;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.ui.test.TestMainActivity;
import com.hdl.photovoltaic.utils.LocalManageUtil;
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
/**
 * 设置界面
 * 我的-设置-界面
 */
public class SetActivity extends CustomBaseActivity implements View.OnClickListener {
public class SetActivity extends CustomBaseActivity {
    private ActivitySetBinding viewBinding;
    @Override
    public Object getContentView() {
@@ -26,6 +34,8 @@
    @Override
    public void onBindView(Bundle savedInstanceState) {
        setStatusBarTranslucent();
        getWindow().setNavigationBarColor(getColor(R.color.text_FF000000));
        //初始化
        initView();
        //初始化界面监听器
@@ -34,45 +44,85 @@
    }
    private void initEvent() {
        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(this);
        viewBinding.setChangePasswordIl.sllLlNameRl.setOnClickListener(this);
        viewBinding.outTv.setOnClickListener(this);
        viewBinding.setPushMsgIl.sllLlRlRightSwitchIv.setOnClickListener(this);
        viewBinding.toolbarTopRl.topBackLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
        //多语言
        viewBinding.setLanguageIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setClass(_mActivity, languageSelectionActivity.class);
                startActivityForResult(intent, 30);
            }
        });
        //账号与安全
        viewBinding.setAccountSecurityIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setClass(_mActivity, AccountAndSecurityActivity.class);
                startActivity(intent);
            }
        });
        //温度单位
        viewBinding.setTemperatureUnitIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setClass(_mActivity, TemperatureUnitActivity.class);
                startActivityForResult(intent, 40);
            }
        });
        //退出登录
        viewBinding.outTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                logoutRequest();
            }
        });
        final int[] count = {0};
        viewBinding.toolbarTopRl.topTitleTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                count[0] = count[0] + 1;
                if (count[0] > 3) {
                    count[0] = 0;
                    startActivity(TestMainActivity.class);
                }
            }
        });
    }
    private void initView() {
        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setText(R.string.me_set);
        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C));
        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setVisibility(View.VISIBLE);
        viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF));
        viewBinding.setNicknameIl.sllLlRlNameTv.setText(R.string.set_nickname);
        viewBinding.setChangePasswordIl.sllLlRlNameTv.setText(R.string.home_login_change_password);
        viewBinding.setCloseAccountIl.sllLlRlNameTv.setText(R.string.set_注销账号);
        viewBinding.setMesIl.sllLlRlTitleTv.setText(R.string.set_消息设置);
        viewBinding.setPushMsgIl.sllLlRlNameTv.setText(R.string.set_推送消息);
        viewBinding.setPushMsgIl.sllLlRlRightNextIv.setVisibility(View.GONE);
        viewBinding.setPushMsgIl.sllLlRlRightSwitchIv.setVisibility(View.VISIBLE);
        viewBinding.setCallMsgIl.sllLlRlNameTv.setText(R.string.set_报警消息);
        viewBinding.setGeneralMsgIl.sllLlRlTitleTv.setText(R.string.set_通用设置);
        viewBinding.setMultiLanguageIl.sllLlRlNameTv.setText(R.string.set_多语言);
        viewBinding.setDataCenterIl.sllLlRlNameTv.setText(R.string.set_数据中心);
        viewBinding.setPrivacyIl.sllLlRlTitleTv.setText(R.string.set_privacy);
        viewBinding.setSystemAuthorizationIl.sllLlRlNameTv.setText(R.string.set_系统权限管理);
        viewBinding.setShareIl.sllLlRlNameTv.setText(R.string.set_第三方信息共享清单);
        viewBinding.toolbarTopRl.topTitleTv.setText(R.string.me_set);
        viewBinding.toolbarTopRl.topBackLl.setVisibility(View.VISIBLE);
        viewBinding.setLanguageIl.sllLlRlNameTv.setText(R.string.set_multilingual);
        viewBinding.setAccountSecurityIl.sllLlRlNameTv.setText(R.string.set_account_security);
        viewBinding.setTemperatureUnitIl.sllLlRlNameTv.setText(R.string.set_temperature_unit);
        viewBinding.setLanguageIl.sllLlRlRightContentTv.setVisibility(View.VISIBLE);
        viewBinding.setLanguageIl.lineV.setVisibility(View.VISIBLE);
        viewBinding.setAccountSecurityIl.lineV.setVisibility(View.VISIBLE);
        String str = LocalManageUtil.getLanguage(UserConfigManage.getInstance().getCurrentAppLanguage()).getTitle();
        viewBinding.setLanguageIl.sllLlRlRightContentTv.setText(str);
        viewBinding.setTemperatureUnitIl.sllLlRlRightContentTv.setVisibility(View.VISIBLE);
        viewBinding.setTemperatureUnitIl.sllLlRlRightContentTv.setText(UserConfigManage.getInstance().getTemperature_unit());
    }
    @Override
    public void onClick(View v) {
        if (v.getId() == viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.getId()) {
            finish();
        } else if (v.getId() == viewBinding.setPushMsgIl.sllLlRlRightSwitchIv.getId()) {
            v.setSelected(!v.isSelected());
        } else if (v.getId() == viewBinding.setChangePasswordIl.sllLlNameRl.getId()) {
            startActivity(MeChangePasswordActivity.class);
        } else if (v.getId() == viewBinding.outTv.getId()) {
            logoutRequest();
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 30 && resultCode == 30) {
            String str = LocalManageUtil.getLanguage(UserConfigManage.getInstance().getCurrentAppLanguage()).getTitle();
            viewBinding.setLanguageIl.sllLlRlRightContentTv.setText(str);
        } else if (requestCode == 40 && resultCode == 40) {
            viewBinding.setTemperatureUnitIl.sllLlRlRightContentTv.setText(UserConfigManage.getInstance().getTemperature_unit());
        }
    }
@@ -80,6 +130,26 @@
     * 退出登录请求的方法
     */
    private void logoutRequest() {
        HDLLinkPMUser.getInstance().logout(0);
        // 二次确认提示框
        ConfirmationCancelDialog dialog = new ConfirmationCancelDialog(this);
        dialog.show();
        dialog.setContent(getString(R.string.loading_log_out));
        dialog.isHideTitle(true);
        dialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
            @Override
            public void Confirm() {
                dialog.dismiss();
                HdlLogLogic.print("设置界面退出登录--->", true);
                HDLLinkPMUser.getInstance().logout(0);
            }
        });
        dialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
            @Override
            public void Cancel() {
                dialog.dismiss();
            }
        });
    }
}