wxr
2023-03-13 61af8b06212a470308e02fd9af929f0f30955107
传感器优化
8个文件已修改
1257 ■■■■ 已修改文件
HDL-ON_Android/Assets/Language.ini 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/Common/R.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/DriverLayer/Control.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/LoginPage.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/AddMemberScanPage.cs 640 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberManagementPage.cs 251 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs 317 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Language.ini
@@ -575,6 +575,9 @@
588=Tip
589=Disagree
590=Residential delivery
591=*Member name
592=Member account
593=Face photo
2532=Visitor Invitation Record
@@ -1820,6 +1823,11 @@
588=人脸信息采集协议提示
589=不同意
590=住宅交付
591=*成员名称
592=成员账号
593=人脸照片
2532=访客邀请记录
2533=访客管理
@@ -3040,6 +3048,9 @@
588=Tip
589=Disagree
590=Residential delivery
591=*Member name
592=Member account
593=Face photo
@@ -4265,6 +4276,9 @@
588=Tip
589=Disagree
590=Residential delivery
591=*Member name
592=Member account
593=Face photo
@@ -5475,6 +5489,9 @@
588=Tip
589=Disagree
590=Residential delivery
591=*Member name
592=Member account
593=Face photo
1000=Влажност в стаята
HDL_ON/Common/R.cs
@@ -5,7 +5,18 @@
    public static class StringId
    {
        /// <summary>
        /// 人脸照片
        /// </summary>
        public const int MemberFace = 593;
        /// <summary>
        /// 成员账号
        /// </summary>
        public const int MemberAccount = 592;
        /// <summary>
        /// 成员名称
        /// </summary>
        public const int MemberName = 591;
        /// <summary>
        /// 住宅交付
        /// </summary>
HDL_ON/DAL/DriverLayer/Control.cs
@@ -1235,12 +1235,11 @@
                        //        return;
                        //    }
                        //}
                        MainPage.Log($"音乐收到数据:{revString}");
                        MainPage.Log($"收到数据:{revString}");
                        foreach (var attr in updateTemp.status)
                        {
                            localFunction.time_stamp = temp.time_stamp;
                            localFunction.SetAttrState(attr.key, attr.value);
                            Console.WriteLine("音乐播放器添加缓存数据=======" + revString);
                        }
HDL_ON/UI/UI1-Login/LoginPage.cs
@@ -35,7 +35,7 @@
            base.RemoveFromParent();
            ////2020-12-22 增加点击隐藏键盘事件
            //2020-12-22 增加点击隐藏键盘事件
            //Application.HideSoftInput();
        }
@@ -238,10 +238,8 @@
                }
                else
                {
                    //etAccount.Text = "15018447586";//音乐数量刷新问题
                    //etAccount.Text = "464027401@qq.com";//
                    //etAccount.Text = "15217626103";//
                    //etAccount.Text = "13682244600";//波哥
                    etAccount.Text = "13168123446";//昆明金茂项目,新风问题
                    //etAccount.Text = "2949126848@qq.com";//陈琳
                    etAccount.Text = "15014291819 ";
@@ -319,7 +317,7 @@
                Height = Application.GetRealHeight(40),
                TextID = StringId.LoginByEmail,
                TextColor = CSS_Color.PromptingColor1,
                TextAlignment = TextAlignment.Center,
                TextAlignment = TextAlignment.CenterLeft,
                TextSize = CSS_FontSize.TextFontSize,
            };
            bodyView.AddChidren(btnEmailLogin);
HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs
@@ -107,6 +107,10 @@
            bool isFrist = true;
            foreach (var brand in brandList)
            {
                if(brand.productPlatform == "HaiLin")//子晴需要隐藏这个入口,由调试软件上传数据 2023-03-09 17:20:33
                {
                    continue;
                }
                var row = new RowLayout()
                {
                    Height = Application.GetRealHeight(87),
@@ -165,13 +169,17 @@
                //下载第三方品牌icon
                ImageUtlis.Current.Load3tyBrandIconImages(brand.brandName, brand.brandIcon, btnIcon);
                btnName.MouseUpEventHandler = (sender, e) => {
                EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
                    
                    var page = new DeviceListPage(brand);
                    MainPage.BasePageView.AddChidren(page);
                    page.LoadPage();
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                };
                btnName.MouseUpEventHandler = eventHandler;
                btnIcon.MouseUpEventHandler = eventHandler;
                btnRight.MouseUpEventHandler = eventHandler;
                row.MouseUpEventHandler = eventHandler;
            }
        }
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/AddMemberScanPage.cs
@@ -1,4 +1,6 @@
using System;
using System.Threading;
using HDL_ON.DAL.Server;
using HDL_ON.UI.CSS;
using Shared;
@@ -29,71 +31,361 @@
            bodyView.BackgroundColor = CSS_Color.MainBackgroundColor;
            new TopViewDiv(bodyView, Language.StringByID(StringId.AddMember)).LoadTopView();
            var btnTitle = new Button()
            {
                Y = Application.GetRealHeight(70),
                X = Application.GetRealWidth(16),
                Height = Application.GetRealHeight(32),
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.TextFontSize,
                TextAlignment = TextAlignment.CenterLeft,
                TextID = StringId.NewMemberAccount,
            };
            bodyView.AddChidren(btnTitle);
            etMemberAccount = new EditText()
            if (Entity.DB_ResidenceData.Instance.SupportFacePass)
            {
                Y = btnTitle.Bottom,
                X = Application.GetRealWidth(16),
                Width = Application.GetRealWidth(356),
                Height = Application.GetRealHeight(40),
                TextColor = CSS_Color.TextualColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextAlignment = TextAlignment.CenterLeft,
                PlaceholderText = Language.StringByID(StringId.PleaseEnterContent),
                PlaceholderTextColor = CSS_Color.PromptingColor2
            };
            bodyView.AddChidren(etMemberAccount);
                var btnMemberName = new Button()
                {
                    Y = Application.GetRealHeight(70),
                    X = Application.GetRealWidth(16),
                    Height = Application.GetRealHeight(32),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextID = StringId.MemberName,
                };
                bodyView.AddChidren(btnMemberName);
            var btnLine = new Button()
                var etMemberName = new EditText()
                {
                    Y = btnMemberName.Bottom,
                    X = Application.GetRealWidth(16),
                    Width = Application.GetRealWidth(356),
                    Height = Application.GetRealHeight(40),
                    TextColor = CSS_Color.TextualColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    PlaceholderText = Language.StringByID(StringId.PleaseEnterContent),
                    PlaceholderTextColor = CSS_Color.PromptingColor2
                };
                bodyView.AddChidren(etMemberName);
                var btnLine = new Button()
                {
                    Y = etMemberName.Bottom,
                    Gravity = Gravity.CenterHorizontal,
                    Width = Application.GetRealWidth(343),
                    Height = Application.GetRealHeight(1),
                    BackgroundColor = CSS_Color.DividingLineColor,
                };
                bodyView.AddChidren(btnLine);
                var btnTitle = new Button()
                {
                    Y = btnLine.Bottom + Application.GetRealHeight(20),
                    X = Application.GetRealWidth(16),
                    Height = Application.GetRealHeight(32),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextID = StringId.MemberAccount,
                };
                bodyView.AddChidren(btnTitle);
                etMemberAccount = new EditText()
                {
                    Y = btnTitle.Bottom,
                    X = Application.GetRealWidth(16),
                    Width = Application.GetRealWidth(356),
                    Height = Application.GetRealHeight(40),
                    TextColor = CSS_Color.TextualColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    PlaceholderText = Language.StringByID(StringId.PleaseEnterContent),
                    PlaceholderTextColor = CSS_Color.PromptingColor2
                };
                bodyView.AddChidren(etMemberAccount);
                var btnLine1 = new Button()
                {
                    Y = etMemberAccount.Bottom,
                    Gravity = Gravity.CenterHorizontal,
                    Width = Application.GetRealWidth(343),
                    Height = Application.GetRealHeight(1),
                    BackgroundColor = CSS_Color.DividingLineColor,
                };
                bodyView.AddChidren(btnLine1);
                #region 人脸管理
                var btnMemberFaceTitle = new Button()
                {
                    Y = btnLine1.Bottom + Application.GetRealHeight(20),
                    X = Application.GetRealWidth(16),
                    Height = Application.GetRealHeight(32),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextID = StringId.MemberFace,
                };
                bodyView.AddChidren(btnMemberFaceTitle);
                var btnAddFace = new Button()
                {
                    Gravity = Gravity.CenterHorizontal,
                    Y = btnMemberFaceTitle.Bottom,
                    Width = Application.GetRealWidth(120),
                    Height = Application.GetRealWidth(120),
                    Radius = (uint)Application.GetRealWidth(22),
                    BorderWidth = 0,
                    UnSelectedImagePath = "PersonalCenter/FacePassage/FaceIcon.png",
                    TextColor = CSS_Color.MainBackgroundColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    IsBold = true,
                    TextAlignment = TextAlignment.Center,
                };
                bodyView.AddChidren(btnAddFace);
                EventHandler<MouseEventArgs> eFaceHandler = (sender, e) =>
                {
                    if (OnAppConfig.Instance.FaceManagementTip)
                    {
                        OnAppConfig.Instance.FaceManagementTip = true;
                        OnAppConfig.Instance.SaveConfig();
                        LoadPictureOptionView();
                        return;
                    }
                    Dialog dialog = new Dialog()
                    {
                        BackgroundColor = CSS_Color.DialogTransparentColor1,
                    };
                    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()
                    {
                        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,
                    };
                    contentView.AddChidren(btnMsg);
                    Button btnMsg1 = 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),
                        TextAlignment = TextAlignment.Center,
                        TextColor = CSS_Color.TextualColor,
                        TextSize = CSS_FontSize.SubheadingFontSize,
                        //SelectedTextColor = CSS_Color.MainBackgroundColor,
                        //SelectedBackgroundColor = CSS_Color.MainColor,
                        TextID = StringId.Disagree,
                    };
                    contentView.AddChidren(btnCancel);
                    Button btnConfirm = new Button()
                    {
                        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,
                    };
                    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();
                    };
                    btnConfirm.MouseUpEventHandler = (sender, e) => {
                        dialog.Close();
                        OnAppConfig.Instance.FaceManagementTip = true;
                        OnAppConfig.Instance.SaveConfig();
                        LoadPictureOptionView();
                    };
                };
                btnAddFace.MouseUpEventHandler = eFaceHandler;
                #endregion
                btnAddMember = new Button()
                {
                    Gravity = Gravity.CenterHorizontal,
                    Y = btnAddFace.Bottom + Application.GetRealHeight(30),
                    Width = Application.GetRealWidth(220),
                    Height = Application.GetRealWidth(44),
                    Radius = (uint)Application.GetRealWidth(22),
                    BorderWidth = 0,
                    BorderColor = 0x00000000,
                    BackgroundColor = CSS_Color.MainColor,
                    TextColor = CSS_Color.MainBackgroundColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    IsBold = true,
                    TextAlignment = TextAlignment.Center,
                    TextID = StringId.ConfirmInvitation,
                };
                bodyView.AddChidren(btnAddMember);
                btnScan = new Button()
                {
                    Y = btnTitle.Bottom,
                    Width = Application.GetRealWidth(40),
                    Height = Application.GetRealWidth(40),
                    X = Application.GetRealWidth(310),
                    UnSelectedImagePath = "Public/Scan.png"
                };
                bodyView.AddChidren(btnScan);
            }
            else
            {
                Y = etMemberAccount.Bottom,
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(1),
                BackgroundColor = CSS_Color.DividingLineColor,
            };
            bodyView.AddChidren(btnLine);
                var btnTitle = new Button()
                {
                    Y = Application.GetRealHeight(70),
                    X = Application.GetRealWidth(16),
                    Height = Application.GetRealHeight(32),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextID = StringId.NewMemberAccount,
                };
                bodyView.AddChidren(btnTitle);
            btnAddMember = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealHeight(244),
                Width = Application.GetRealWidth(220),
                Height = Application.GetRealWidth(44),
                Radius = (uint)Application.GetRealWidth(22),
                BorderWidth = 0,
                BorderColor = 0x00000000,
                BackgroundColor = CSS_Color.MainColor,
                TextColor = CSS_Color.MainBackgroundColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                IsBold = true,
                TextAlignment = TextAlignment.Center,
                TextID = StringId.ConfirmInvitation,
            };
            bodyView.AddChidren(btnAddMember);
                etMemberAccount = new EditText()
                {
                    Y = btnTitle.Bottom,
                    X = Application.GetRealWidth(16),
                    Width = Application.GetRealWidth(356),
                    Height = Application.GetRealHeight(40),
                    TextColor = CSS_Color.TextualColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    PlaceholderText = Language.StringByID(StringId.PleaseEnterContent),
                    PlaceholderTextColor = CSS_Color.PromptingColor2
                };
                bodyView.AddChidren(etMemberAccount);
            btnScan = new Button()
            {
                Y = btnAddMember.Bottom,
                Height = Application.GetRealHeight(44),
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.TextFontSize,
                TextID = StringId.ScanQRCoden,
            };
            bodyView.AddChidren(btnScan);
                var btnLine = new Button()
                {
                    Y = etMemberAccount.Bottom,
                    Gravity = Gravity.CenterHorizontal,
                    Width = Application.GetRealWidth(343),
                    Height = Application.GetRealHeight(1),
                    BackgroundColor = CSS_Color.DividingLineColor,
                };
                bodyView.AddChidren(btnLine);
                btnAddMember = new Button()
                {
                    Gravity = Gravity.CenterHorizontal,
                    Y = Application.GetRealHeight(244),
                    Width = Application.GetRealWidth(220),
                    Height = Application.GetRealWidth(44),
                    Radius = (uint)Application.GetRealWidth(22),
                    BorderWidth = 0,
                    BorderColor = 0x00000000,
                    BackgroundColor = CSS_Color.MainColor,
                    TextColor = CSS_Color.MainBackgroundColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    IsBold = true,
                    TextAlignment = TextAlignment.Center,
                    TextID = StringId.ConfirmInvitation,
                };
                bodyView.AddChidren(btnAddMember);
                btnScan = new Button()
                {
                    Y = btnAddMember.Bottom,
                    Height = Application.GetRealHeight(44),
                    TextAlignment = TextAlignment.Center,
                    TextColor = CSS_Color.MainColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextID = StringId.ScanQRCoden,
                };
                bodyView.AddChidren(btnScan);
            }
            LoadEventList();
        }
@@ -137,5 +429,237 @@
            }) { IsBackground = true }.Start();
        }
        const int imageHeight = 400;
        /// <summary>
        /// 加载图标选择选项
        /// </summary>
        void LoadPictureOptionView()
        {
            var pView = new FrameLayout()
            {
                BackgroundColor = CSS_Color.DialogTransparentColor1,
            };
            bodyView.AddChidren(pView);
            var pictureOptionView = new FrameLayout()
            {
                Y = Application.GetRealHeight(445 + 50),
                Height = Application.GetRealHeight(250),
                AnimateSpeed = 0.3f,
                Animate = Animate.DownToUp,
            };
            pView.AddChidren(pictureOptionView);
            var optionView = new VerticalScrolViewLayout()
            {
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(100),
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
            };
            pictureOptionView.AddChidren(optionView);
            var btnTakePicture = new Button()
            {
                Height = Application.GetRealHeight(50),
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                SelectedTextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextID = StringId.TakePicture,
            };
            optionView.AddChidren(btnTakePicture);
            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
            var btnAlbum = new Button()
            {
                Height = Application.GetRealHeight(50),
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                SelectedTextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextID = StringId.Album,
            };
            optionView.AddChidren(btnAlbum);
            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
            var btnCancel = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealHeight(8) + optionView.Bottom,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(50),
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
                TextID = StringId.Cancel,
                TextColor = CSS_Color.WarningColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
            };
            pictureOptionView.AddChidren(btnCancel);
            pictureOptionView.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            pView.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnCancel.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnTakePicture.MouseDownEventHandler = (sender, e) =>
            {
                btnTakePicture.IsSelected = true;
            };
            btnTakePicture.MouseUpEventHandler = (sender, e) =>
            {
                btnTakePicture.IsSelected = false;
                var imageName = Guid.NewGuid().ToString();
                CropImage.TakePicture((imagePath) =>
                {
                    CropImageCallBack(imagePath, 1, imageName);
                }, imageName, 4, 6, imageHeight);
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnAlbum.MouseDownEventHandler = (sender, e) =>
            {
                btnAlbum.IsSelected = true;
            };
            btnAlbum.MouseUpEventHandler = (sender, e) =>
            {
                btnAlbum.IsSelected = false;
                //从相册选择图片裁剪
                var imageName = Guid.NewGuid().ToString();
                //var imageName = scene.sid;
                CropImage.SelectPicture((imagePath) =>
                {
                    CropImageCallBack(imagePath, 2, imageName);
                }, imageName, 4, 6, imageHeight);
                pictureOptionView.Parent.RemoveFromParent();
            };
        }
        /// <summary>
        /// 裁剪完照片回调,统一处理
        /// </summary>
        /// <param name="imagePath">裁剪后的真实路径</param>
        /// <param name="imageSource">照片来源;1:拍照;2:图库</param>
        void CropImageCallBack(string selectImagePath, int imageSource, string imageName)
        {
            if (string.IsNullOrEmpty(selectImagePath) == true)
            {
                return;
            }
            //上传成功到回调
            Action<bool> uploadSuccessAction = (isSuccess) =>
            {
                //点击重新录入事件
                Action action = () =>
                {
                    if (!isSuccess)
                    {
                        if (imageSource == 1)
                        {
                            CropImage.TakePicture((imagePath) =>
                            {
                                CropImageCallBack(imagePath, 2, imageName);
                            }, imageName, 4, 6, imageHeight);
                        }
                        else
                        {
                            CropImage.SelectPicture((imagePath) =>
                            {
                                CropImageCallBack(imagePath, 1, imageName);
                            }, imageName, 4, 6, imageHeight);
                        }
                    }
                };
                if (isSuccess)
                {
                    //ReadFaceInfo(false);
                }
                Application.RunOnMainThread(() =>
                {
                    var page = new FaceSettingResultPage(action);
                    MainPage.BasePageView.AddChidren(page);
                    page.LoadPage(isSuccess);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                });
            };
            //上传图片到云端
            UploadImage(selectImagePath, uploadSuccessAction);
        }
        /// <summary>
        /// 上传图片方法
        /// </summary>
        /// <param name="selectImagePath">裁剪后的图片路径</param>
        /// <param name="imageView"></param>
        /// <param name="uploadResultAction"></param>
        void UploadImage(string selectImagePath, Action<bool> uploadResultAction)
        {
            try
            {
                //1.读取裁剪后的图片,然后删除
                var imageBytes = Shared.IO.FileUtils.ReadFile(selectImagePath);
                System.IO.File.Delete(selectImagePath);
                var waitPage = new Loading();
                bodyView.AddChidren(waitPage);
                waitPage.Start(Language.StringByID(StringId.PleaseWait));
                //开始上传
                new Thread(() =>
                {
                    try
                    {
                        string base64string = Convert.ToBase64String(imageBytes);
                        //Utlis.WriteLine("上传图片Length:" + imageBytes.Length + " base64:" + base64string);
                        var pack = new HttpServerRequest().FaceSetting(base64string);
                        if (pack != null)
                        {
                            Utlis.WriteLine("上传结果:" + pack.message);
                            uploadResultAction?.Invoke(pack.Code == StateCode.SUCCESS);
                        }
                    }
                    catch (Exception ex)
                    {
                    }
                    finally
                    {
                        Application.RunOnMainThread(() =>
                        {
                            if (waitPage != null)
                            {
                                waitPage.RemoveFromParent();
                                waitPage = null;
                            }
                        });
                    }
                })
                { IsBackground = true }.Start();
            }
            catch (Exception ex)
            {
                MainPage.Log(ex.Message);
            }
        }
    }
}
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberManagementPage.cs
@@ -3,6 +3,8 @@
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using System.Collections.Generic;
using System.Threading;
using HDL_ON.DAL.Server;
namespace HDL_ON.UI
{
@@ -119,7 +121,7 @@
                    TextID = StringId.Member
                };
                userTypeView.AddChidren(btnUserTypeName);
                if(Language.CurrentLanguage == "English")
                if (Language.CurrentLanguage == "English")
                {
                    userTypeView.X = Application.GetRealWidth(260);
                }
@@ -258,7 +260,8 @@
                EventHandler<MouseEventArgs> eHandler = (sender, e) =>
                {
                    action = () => {
                    action = () =>
                    {
                        residenceMemberInfos.Remove(memberInfo);
                        LoadMemberRow();
                    };
@@ -316,7 +319,7 @@
                    {
                        if (OnAppConfig.Instance.FaceManagementTip)
                        {
                            LoadPictureOptionView();
                            return;
                        }
@@ -448,6 +451,13 @@
                            dialog.Close();
                        };
                        btnConfirm.MouseUpEventHandler = (sender, e) =>
                        {
                            dialog.Close();
                            OnAppConfig.Instance.FaceManagementTip = true;
                            OnAppConfig.Instance.SaveConfig();
                            LoadPictureOptionView();
                        };
                    };
                    view4.MouseUpEventHandler = eHandler;
@@ -490,5 +500,238 @@
                //#endregion 
            }
        }
        const int imageHeight = 400;
        /// <summary>
        /// 加载图标选择选项
        /// </summary>
        void LoadPictureOptionView()
        {
            var pView = new FrameLayout()
            {
                BackgroundColor = CSS_Color.DialogTransparentColor1,
            };
            bodyView.AddChidren(pView);
            var pictureOptionView = new FrameLayout()
            {
                Y = Application.GetRealHeight(445 + 50),
                Height = Application.GetRealHeight(250),
                AnimateSpeed = 0.3f,
                Animate = Animate.DownToUp,
            };
            pView.AddChidren(pictureOptionView);
            var optionView = new VerticalScrolViewLayout()
            {
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(100),
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
            };
            pictureOptionView.AddChidren(optionView);
            var btnTakePicture = new Button()
            {
                Height = Application.GetRealHeight(50),
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                SelectedTextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextID = StringId.TakePicture,
            };
            optionView.AddChidren(btnTakePicture);
            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
            var btnAlbum = new Button()
            {
                Height = Application.GetRealHeight(50),
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                SelectedTextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextID = StringId.Album,
            };
            optionView.AddChidren(btnAlbum);
            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
            var btnCancel = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealHeight(8) + optionView.Bottom,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(50),
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
                TextID = StringId.Cancel,
                TextColor = CSS_Color.WarningColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
            };
            pictureOptionView.AddChidren(btnCancel);
            pictureOptionView.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            pView.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnCancel.MouseUpEventHandler = (sender, e) =>
            {
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnTakePicture.MouseDownEventHandler = (sender, e) =>
            {
                btnTakePicture.IsSelected = true;
            };
            btnTakePicture.MouseUpEventHandler = (sender, e) =>
            {
                btnTakePicture.IsSelected = false;
                var imageName = Guid.NewGuid().ToString();
                CropImage.TakePicture((imagePath) =>
                {
                    CropImageCallBack(imagePath, 1, imageName);
                }, imageName, 4, 6, imageHeight);
                pictureOptionView.Parent.RemoveFromParent();
            };
            btnAlbum.MouseDownEventHandler = (sender, e) =>
            {
                btnAlbum.IsSelected = true;
            };
            btnAlbum.MouseUpEventHandler = (sender, e) =>
            {
                btnAlbum.IsSelected = false;
            //从相册选择图片裁剪
            var imageName = Guid.NewGuid().ToString();
            //var imageName = scene.sid;
            CropImage.SelectPicture((imagePath) =>
                {
                    CropImageCallBack(imagePath, 2, imageName);
                }, imageName, 4, 6, imageHeight);
                pictureOptionView.Parent.RemoveFromParent();
            };
        }
        /// <summary>
        /// 裁剪完照片回调,统一处理
        /// </summary>
        /// <param name="imagePath">裁剪后的真实路径</param>
        /// <param name="imageSource">照片来源;1:拍照;2:图库</param>
        void CropImageCallBack(string selectImagePath, int imageSource, string imageName)
        {
            if (string.IsNullOrEmpty(selectImagePath) == true)
            {
                return;
            }
            //上传成功到回调
            Action<bool> uploadSuccessAction = (isSuccess) =>
            {
            //点击重新录入事件
            Action action = () =>
                {
                    if (!isSuccess)
                    {
                        if (imageSource == 1)
                        {
                            CropImage.TakePicture((imagePath) =>
                            {
                                CropImageCallBack(imagePath, 2, imageName);
                            }, imageName, 4, 6, imageHeight);
                        }
                        else
                        {
                            CropImage.SelectPicture((imagePath) =>
                            {
                                CropImageCallBack(imagePath, 1, imageName);
                            }, imageName, 4, 6, imageHeight);
                        }
                    }
                };
                if (isSuccess)
                {
                    //ReadFaceInfo(false);
                }
                Application.RunOnMainThread(() =>
                {
                    var page = new FaceSettingResultPage(action);
                    MainPage.BasePageView.AddChidren(page);
                    page.LoadPage(isSuccess);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                });
            };
            //上传图片到云端
            UploadImage(selectImagePath, uploadSuccessAction);
        }
        /// <summary>
        /// 上传图片方法
        /// </summary>
        /// <param name="selectImagePath">裁剪后的图片路径</param>
        /// <param name="imageView"></param>
        /// <param name="uploadResultAction"></param>
        void UploadImage(string selectImagePath, Action<bool> uploadResultAction)
        {
            try
            {
                //1.读取裁剪后的图片,然后删除
                var imageBytes = Shared.IO.FileUtils.ReadFile(selectImagePath);
                System.IO.File.Delete(selectImagePath);
                var waitPage = new Loading();
                bodyView.AddChidren(waitPage);
                waitPage.Start(Language.StringByID(StringId.PleaseWait));
                //开始上传
                new Thread(() =>
                {
                    try
                    {
                        string base64string = Convert.ToBase64String(imageBytes);
                    //Utlis.WriteLine("上传图片Length:" + imageBytes.Length + " base64:" + base64string);
                    var pack = new HttpServerRequest().FaceSetting(base64string);
                        if (pack != null)
                        {
                            Utlis.WriteLine("上传结果:" + pack.message);
                            uploadResultAction?.Invoke(pack.Code == StateCode.SUCCESS);
                        }
                    }
                    catch (Exception ex)
                    {
                    }
                    finally
                    {
                        Application.RunOnMainThread(() =>
                        {
                            if (waitPage != null)
                            {
                                waitPage.RemoveFromParent();
                                waitPage = null;
                            }
                        });
                    }
                })
                { IsBackground = true }.Start();
            }
            catch (Exception ex)
            {
                MainPage.Log(ex.Message);
            }
        }
    }
}
}
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs
@@ -69,7 +69,7 @@
            {
                Y = Application.GetRealHeight(64),
                Height = Application.GetRealHeight(600),
                ScrollEnabled = false
                ScrollEnabled = sensorList.Count > 6
            };
            bodyView.AddChidren(contentView);
@@ -657,165 +657,178 @@
            bool initTitleButton = true;
            int index = 1;
            foreach (var tempSensor in sensorList)
            try
            {
                if(index > 6)
                new System.Threading.Thread(() =>
                {
                    break;
                }
                if (tempSensor.sid == function.sid)
                {
                    continue;
                }
                if (tempSensor.spk != function.spk)
                {
                    continue;
                }
                contentView.ScrollEnabled = true;
                if (initTitleButton)
                {
                    Button btnOthreTitle = new Button()
                    foreach (var tempSensor in sensorList)
                    {
                        X = Application.GetRealWidth(16),
                        Width = Application.GetRealWidth(200),
                        Height = Application.GetRealWidth(38),
                        TextAlignment = TextAlignment.CenterLeft,
                        TextColor = CSS_Color.FirstLevelTitleColor,
                        TextSize = CSS_FontSize.SubheadingFontSize,
                        TextID = StringId.OtherArea,
                    };
                    contentView.AddChidren(btnOthreTitle);
                    initTitleButton = false;
                }
                        if (index >= 6)
                        {
                            break;
                        }
                        if (tempSensor.sid == function.sid)
                        {
                            continue;
                        }
                        if (tempSensor.spk != function.spk)
                        {
                            continue;
                        }
                #region 其它传感器信息栏
                FrameLayout otherInfoView = new FrameLayout()
                {
                    Gravity = Gravity.CenterHorizontal,
                    Width = Application.GetRealWidth(343),
                    Height = Application.GetRealWidth(100),
                    BackgroundColor = CSS_Color.MainBackgroundColor,
                    Radius = (uint)Application.GetRealWidth(12),
                    BorderColor = 0x00000000,
                    BorderWidth = 0,
                };
                contentView.AddChidren(otherInfoView);
                Button btnTipColor1 = new Button()
                {
                    X = Application.GetRealWidth(8),
                    Y = Application.GetRealWidth(16),
                    Width = Application.GetRealWidth(12),
                    Height = Application.GetRealWidth(12),
                    BackgroundColor = tipColorList[index++],
                    Radius = (uint)Application.GetRealWidth(2),
                    BorderWidth = 0,
                    BorderColor = 0x00000000,
                };
                otherInfoView.AddChidren(btnTipColor1);
                Button btnSensorName = new Button()
                {
                    X = Application.GetRealWidth(28),
                    Y = Application.GetRealWidth(10),
                    Width = Application.GetRealWidth(250),
                    Height = Application.GetRealWidth(24),
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    Text = function.name,
                    IsBold = true,
                };
                otherInfoView.AddChidren(btnSensorName);
                Button btnFromFoorAndRoom1 = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnSeltSensorName.Bottom,
                    Width = Application.GetRealWidth(270),
                    Height = Application.GetRealHeight(21),
                    TextColor = CSS_Color.PromptingColor1,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    Text = tempSensor.GetRoomListName()
                };
                otherInfoView.AddChidren(btnFromFoorAndRoom1);
                var btnSetting1 = new Button()
                {
                    X = Application.GetRealWidth(291),
                    Y = Application.GetRealWidth(6),
                    Width = Application.GetMinRealAverage(32),
                    Height = Application.GetMinRealAverage(32),
                    UnSelectedImagePath = "Public/FuncInfoSetIcon.png",
                };
                otherInfoView.AddChidren(btnSetting1);
                btnSetting1.MouseUpEventHandler = (sender, e) =>
                {
                    Action backAction = () =>
                    {
                        MainPage.Log("45678i");
                        Application.RunOnMainThread(() =>
                        {
                            btnSeltSensorName.Text = tempSensor.name;
                            if (initTitleButton)
                            {
                                Button btnOthreTitle = new Button()
                                {
                                    X = Application.GetRealWidth(16),
                                    Width = Application.GetRealWidth(200),
                                    Height = Application.GetRealWidth(38),
                                    TextAlignment = TextAlignment.CenterLeft,
                                    TextColor = CSS_Color.FirstLevelTitleColor,
                                    TextSize = CSS_FontSize.SubheadingFontSize,
                                    TextID = StringId.OtherArea,
                                };
                                contentView.AddChidren(btnOthreTitle);
                                initTitleButton = false;
                            }
                            #region 其它传感器信息栏
                            FrameLayout otherInfoView = new FrameLayout()
                            {
                                Gravity = Gravity.CenterHorizontal,
                                Width = Application.GetRealWidth(343),
                                Height = Application.GetRealWidth(100),
                                BackgroundColor = CSS_Color.MainBackgroundColor,
                                Radius = (uint)Application.GetRealWidth(12),
                                BorderColor = 0x00000000,
                                BorderWidth = 0,
                            };
                            contentView.AddChidren(otherInfoView);
                            Button btnTipColor1 = new Button()
                            {
                                X = Application.GetRealWidth(8),
                                Y = Application.GetRealWidth(16),
                                Width = Application.GetRealWidth(12),
                                Height = Application.GetRealWidth(12),
                                BackgroundColor = tipColorList[index++],
                                Radius = (uint)Application.GetRealWidth(2),
                                BorderWidth = 0,
                                BorderColor = 0x00000000,
                            };
                            otherInfoView.AddChidren(btnTipColor1);
                            Button btnSensorName = new Button()
                            {
                                X = Application.GetRealWidth(28),
                                Y = Application.GetRealWidth(10),
                                Width = Application.GetRealWidth(250),
                                Height = Application.GetRealWidth(24),
                                TextAlignment = TextAlignment.CenterLeft,
                                TextColor = CSS_Color.FirstLevelTitleColor,
                                TextSize = CSS_FontSize.TextFontSize,
                                Text = function.name,
                                IsBold = true,
                            };
                            otherInfoView.AddChidren(btnSensorName);
                            Button btnFromFoorAndRoom1 = new Button()
                            {
                                X = Application.GetRealWidth(16),
                                Y = btnSeltSensorName.Bottom,
                                Width = Application.GetRealWidth(270),
                                Height = Application.GetRealHeight(21),
                                TextColor = CSS_Color.PromptingColor1,
                                TextAlignment = TextAlignment.CenterLeft,
                                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                                Text = tempSensor.GetRoomListName()
                            };
                            otherInfoView.AddChidren(btnFromFoorAndRoom1);
                            var btnSetting1 = new Button()
                            {
                                X = Application.GetRealWidth(291),
                                Y = Application.GetRealWidth(6),
                                Width = Application.GetMinRealAverage(32),
                                Height = Application.GetMinRealAverage(32),
                                UnSelectedImagePath = "Public/FuncInfoSetIcon.png",
                            };
                            otherInfoView.AddChidren(btnSetting1);
                            btnSetting1.MouseUpEventHandler = (sender, e) =>
                            {
                                Action backAction = () =>
                                {
                                    MainPage.Log("45678i");
                                    Application.RunOnMainThread(() =>
                                    {
                                        btnSeltSensorName.Text = tempSensor.name;
                                    });
                                };
                                var infoView = new FunctionBaseInfoSetPage(tempSensor, backAction);
                                MainPage.BasePageView.AddChidren(infoView);
                                infoView.LoadPage();
                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            };
                            Button btnSensorValue = new Button()
                            {
                                X = Application.GetRealWidth(16),
                                Y = Application.GetRealWidth(47),
                                Width = Application.GetRealWidth(200),
                                Height = Application.GetRealWidth(43),
                                TextAlignment = TextAlignment.CenterLeft,
                                TextColor = CSS_Color.FirstLevelTitleColor,
                                IsBold = true,
                                TextSize = CSS_FontSize.HeadlineFontSize,
                            };
                            otherInfoView.AddChidren(btnSensorValue);
                            var btnShowData1 = new Button()
                            {
                                X = Application.GetRealWidth(291),
                                Y = Application.GetRealWidth(62),
                                Width = Application.GetMinRealAverage(32),
                                Height = Application.GetMinRealAverage(32),
                                UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png",
                                SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png",
                            };
                            otherInfoView.AddChidren(btnShowData1);
                            btnShowData1.MouseUpEventHandler = (sender, e) =>
                            {
                                btnShowData1.IsSelected = !btnShowData1.IsSelected;
                                if (btnShowData1.IsSelected)
                                {
                                    if (!showFunctions.Contains(tempSensor))
                                    {
                                        showFunctions.Add(tempSensor);
                                    }
                                }
                                else
                                {
                                    if (showFunctions.Contains(tempSensor))
                                    {
                                        showFunctions.Remove(tempSensor);
                                    }
                                }
                                LoadMothed_GetSensorHistoryData();
                            };
                            #endregion
                            contentView.AddChidren(new Button()
                            {
                                Height = Application.GetRealHeight(12),
                            });
                        });
                    };
                    var infoView = new FunctionBaseInfoSetPage(tempSensor, backAction);
                    MainPage.BasePageView.AddChidren(infoView);
                    infoView.LoadPage();
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                };
                Button btnSensorValue = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = Application.GetRealWidth(47),
                    Width = Application.GetRealWidth(200),
                    Height = Application.GetRealWidth(43),
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    IsBold = true,
                    TextSize = CSS_FontSize.HeadlineFontSize,
                };
                otherInfoView.AddChidren(btnSensorValue);
                var btnShowData1 = new Button()
                {
                    X = Application.GetRealWidth(291),
                    Y = Application.GetRealWidth(62),
                    Width = Application.GetMinRealAverage(32),
                    Height = Application.GetMinRealAverage(32),
                    UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png",
                    SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png",
                };
                otherInfoView.AddChidren(btnShowData1);
                btnShowData1.MouseUpEventHandler = (sender, e) => {
                    btnShowData1.IsSelected = !btnShowData1.IsSelected;
                    if (btnShowData1.IsSelected)
                    {
                        if (!showFunctions.Contains(tempSensor))
                        {
                            showFunctions.Add(tempSensor);
                        }
                        System.Threading.Thread.Sleep(50);
                    }
                    else
                    {
                        if (showFunctions.Contains(tempSensor))
                        {
                            showFunctions.Remove(tempSensor);
                        }
                    }
                    LoadMothed_GetSensorHistoryData();
                };
                #endregion
                contentView.AddChidren(new Button()
                {
                    Height = Application.GetRealHeight(12),
                });
                }).Start();
            }
            catch(Exception ex)
            {
                MainPage.Log($"加载传感器异常xx:{ex.Message}");
            }
            #endregion
            new TopViewDiv(bodyView, Language.StringByID(sensorTemp.GetFunctionTypeNameId(function.spk))).LoadTopView();