mac
2024-07-25 f9181a9c8125136f597add7c30cb2ff508d54ba7
HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
@@ -2,6 +2,7 @@
using HDL_ON.UI.CSS;
using HDL_ON.Entity;
using HDL_ON.DriverLayer;
using System;
namespace HDL_ON.UI
{
@@ -163,8 +164,25 @@
            bodyView = this;
            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
        }
        public void LoadView()
        {
            //try
            //{
            //    if (MainPage.CurPageIndex == 3)
            //    {
            //        Application.RunOnMainThread(() =>
            //        {
            //            this.RemoveFromParent();
            //            return;
            //        });
            //    }
            //}
            //catch (Exception ex)
            //{
            //    MainPage.Log($"界面切换异常:{ex.Message}");
            //}
            MainPage.CurPageIndex = 3;
            #region 个人信息
            topbg = new FrameLayout()
            {
@@ -293,7 +311,9 @@
            var residenceFunctionCount = 0;
            #region 住宅信息区域
            if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare && DB_ResidenceData.Instance.GatewayType == 1)
            if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare
                && DB_ResidenceData.Instance.GatewayType == 1
                && DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
            {
                residenceInfoView = new FrameLayout()
                {
@@ -583,174 +603,52 @@
                    residenceAddFunctionView.AddChidren(btnResidenceAddFunctionText);
                    #endregion
                    residenceFunctionCount++;
                    #region ---人脸管理
                    var faceManagementView = new FrameLayout()
                    if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
                    {
                        X = Application.GetRealWidth(28 - 24),
                        Y = residenceManageView.Bottom,
                        Width = Application.GetRealWidth(64 + 48),
                        Height = Application.GetRealWidth(64),
                    };
                    residenceInfoView.AddChidren(faceManagementView);
                    var btnFaceManagementIcon = new Button
                    {
                        Gravity = Gravity.CenterHorizontal,
                        Y = Application.GetRealHeight(5),
                        Width = Application.GetMinRealAverage(30),
                        Height = Application.GetMinRealAverage(30),
                        UnSelectedImagePath = "PersonalCenter/FaceManagementIcon.png",
                    };
                    faceManagementView.AddChidren(btnFaceManagementIcon);
                    var btnFaceManagementText = new Button()
                    {
                        Y = btnResidenceManageIcon.Bottom,
                        Height = Application.GetRealHeight(29),
                        TextID = StringId.FaceManagemant,
                        TextAlignment = TextAlignment.Center,
                        TextColor = CSS_Color.FirstLevelTitleColor,
                        TextSize = CSS_FontSize.PromptFontSize_FirstLevel
                    };
                    faceManagementView.AddChidren(btnFaceManagementText);
                    btnFaceManagementIcon.MouseUpEventHandler = (sender, e) => {
                        if (OnAppConfig.Instance.FaceManagementTip) {
                            return;
                        }
                        Dialog dialog = new Dialog()
                        residenceFunctionCount++;
                        #region ---组合调光
                        var faceManagementView = new FrameLayout()
                        {
                            BackgroundColor = CSS_Color.DialogTransparentColor1,
                            X = Application.GetRealWidth(28 - 24),
                            Y = residenceManageView.Bottom,
                            Width = Application.GetRealWidth(64 + 48),
                            Height = Application.GetRealWidth(64),
                        };
                        residenceInfoView.AddChidren(faceManagementView);
                        FrameLayout contentView = new FrameLayout()
                        {
                            Gravity = Gravity.Center,
                            Width = Application.GetRealWidth(270),
                            Height = Application.GetRealHeight(192),
                            BackgroundColor = CSS.CSS_Color.MainBackgroundColor,
                            BorderColor = 0x00000000,
                            BorderWidth = 0,
                            Radius = (uint)Application.GetMinRealAverage(10),
                        };
                        dialog.AddChidren(contentView);
                        Button btnTitle = new Button()
                        {
                            Y = Application.GetRealHeight(16),
                            Height = Application.GetRealHeight(30),
                            TextColor = CSS_Color.MainColor,
                            TextSize = CSS_FontSize.SubheadingFontSize,
                            TextAlignment = TextAlignment.Center,
                            IsBold = true,
                            TextID = StringId.FaceProtocolPrompt,
                        };
                        contentView.AddChidren(btnTitle);
                        Button btnMsg = new Button()
                        var btnFaceManagementIcon = new Button
                        {
                            Gravity = Gravity.CenterHorizontal,
                            Height = Application.GetRealHeight(35),
                            Y = btnTitle.Bottom,
                            Width = Application.GetRealHeight(200),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = CSS_Color.TextualColor,
                            TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                            Text = "    为保护您的个人隐私权益,特向您通知并申请明确同意授权。请你仔细阅读",
                            IsMoreLines = true,
                            Y = Application.GetRealHeight(5),
                            Width = Application.GetMinRealAverage(30),
                            Height = Application.GetMinRealAverage(30),
                            UnSelectedImagePath = "PersonalCenter/CombinedDimmingIcon.png",
                        };
                        contentView.AddChidren(btnMsg);
                        Button btnMsg1 = new Button()
                        faceManagementView.AddChidren(btnFaceManagementIcon);
                        var btnFaceManagementText = new Button()
                        {
                            Gravity = Gravity.CenterHorizontal,
                            Height = Application.GetRealHeight(15),
                            Y = btnMsg.Bottom,
                            Width = Application.GetRealHeight(200),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = CSS_Color.MainColor,
                            TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                            Text = "    《On Pro人脸信息采集协议》",
                            IsMoreLines = true,
                        };
                        contentView.AddChidren(btnMsg1);
                        Button btnMsg2 = new Button()
                        {
                            Gravity = Gravity.CenterHorizontal,
                            Height = Application.GetRealHeight(35),
                            Y = btnMsg1.Bottom,
                            Width = Application.GetRealHeight(200),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = CSS_Color.TextualColor,
                            TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                            Text = "    若同意该协议,请点击【同意】按键,表示您已经理解并同意人脸信息采集协议。",
                            IsMoreLines = true,
                        };
                        contentView.AddChidren(btnMsg2);
                        Button btnLine = new Button()
                        {
                            Y = Application.GetRealHeight(149),
                            Height = Application.GetRealHeight(1),
                            Width = Application.GetRealWidth(270 / 2),
                            BackgroundColor = CSS.CSS_Color.DividingLineColor,
                        };
                        contentView.AddChidren(btnLine);
                        Button btnCancel = new Button()
                        {
                            Y = btnLine.Bottom,
                            Width = Application.GetRealWidth(135),
                            Height = Application.GetRealHeight(43),
                            Y = btnResidenceManageIcon.Bottom,
                            Height = Application.GetRealHeight(29),
                            TextID = StringId.GroupControl,
                            TextAlignment = TextAlignment.Center,
                            TextColor = CSS_Color.TextualColor,
                            TextSize = CSS_FontSize.SubheadingFontSize,
                            //SelectedTextColor = CSS_Color.MainBackgroundColor,
                            //SelectedBackgroundColor = CSS_Color.MainColor,
                            TextID = StringId.Disagree,
                            TextColor = CSS_Color.FirstLevelTitleColor,
                            TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                            IsMoreLines = true,
                        };
                        contentView.AddChidren(btnCancel);
                        faceManagementView.AddChidren(btnFaceManagementText);
                        Button btnConfirm = new Button()
                        EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
                        {
                            X = btnCancel.Right,
                            Y = btnLine.Y,
                            Width = Application.GetRealWidth(135),
                            Height = Application.GetRealHeight(45),
                            TextAlignment = TextAlignment.Center,
                            //TextColor = CSS_Color.TextualColor,
                            TextSize = CSS_FontSize.SubheadingFontSize,
                            TextColor = CSS_Color.MainBackgroundColor,
                            BackgroundColor = CSS_Color.MainColor,
                            TextID = StringId.Agree,
                            var page = new CombinedDimmingListPage();
                            MainPage.BasePageView.AddChidren(page);
                            page.LoadPage();
                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        };
                        contentView.AddChidren(btnConfirm);
                        //例:右下圆角 大小为50
                        int mRectCornerID = HDLUtils.RectCornerBottomRight;
                        btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID);
                        dialog.Show();
                        btnCancel.MouseUpEventHandler += (sender, e) =>
                        {
                            dialog.Close();
                        };
                        btnMsg1.MouseUpEventHandler += (sender, e) =>
                        {
                            string url = "https://developer.hdlcontrol.com/人脸信息采集协议.html";
                            if (Language.CurrentLanguage != "Chinese")
                            {
                                url = "https://developer.hdlcontrol.com/Face information collection protocol.html";
                            }
                            new WebViewDialog().LoadPage("人脸信息采集协议", url);
                            dialog.Close();
                        };
                    };
                    #endregion
                        faceManagementView.MouseUpEventHandler = eventHandler;
                        btnFaceManagementText.MouseUpEventHandler = eventHandler;
                        btnFaceManagementIcon.MouseUpEventHandler = eventHandler;
                        #endregion
                    }
                }
            }
            else