wxr
2024-09-27 acc8caee31c4be90bd38d1af18136b0e84f6fe94
HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs
@@ -1,462 +1,462 @@
using System;
using HDL_ON.UI.CSS;
using Shared;
using HDL_ON.DAL.Server;
//using System;
//using HDL_ON.UI.CSS;
//using Shared;
//using HDL_ON.DAL.Server;
namespace HDL_ON.UI
{
    /// <summary>
    /// 手势解锁
    /// </summary>
    public class AppUnlockGesturePage : FrameLayout
    {
        /// <summary>
        ///
        /// </summary>
        FrameLayout bodyView;
        /// <summary>
        /// 错误提示按钮
        /// </summary>
        Button btnTipMsg;
//namespace HDL_ON.UI
//{
//    /// <summary>
//    /// 手势解锁
//    /// </summary>
//    public class AppUnlockGesturePage : FrameLayout
//    {
//        /// <summary>
//        ///
//        /// </summary>
//        FrameLayout bodyView;
//        /// <summary>
//        /// 错误提示按钮
//        /// </summary>
//        Button btnTipMsg;
        string passwrod = "";
        string oldPasswrod = "";
        Action backAction;
        public AppUnlockGesturePage(string pw, Action action)
        {
            bodyView = this;
            bodyView.Tag = "unlockpage";
            oldPasswrod = pw;
            backAction = action;
        }
//        string passwrod = "";
//        string oldPasswrod = "";
//        Action backAction;
//        public AppUnlockGesturePage(string pw, Action action)
//        {
//            bodyView = this;
//            bodyView.Tag = "unlockpage";
//            oldPasswrod = pw;
//            backAction = action;
//        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="optionType">
        /// 操作方式:
        /// 1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;
        /// 5:关闭指纹ID;6:关闭面容ID;7:解锁验证
        /// </param>
        public void LoadPage(string optionType)
        {
            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
            //解锁验证无法后退,必须验证
            if (optionType != "7")
            {
                if (oldPasswrod == "")
                    new TopViewDiv(bodyView, Language.StringByID(StringId.SetGesturePassword)).LoadTopView();
                else
                    new TopViewDiv(bodyView, Language.StringByID(StringId.VerifyGesturePassword)).LoadTopView();
            }
            Button btnGestureIcon = new Button()
            {
                Y = Application.GetRealHeight(96),
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(64),
                Height = Application.GetRealWidth(64),
                //UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/GestureGrayIcon.png",
            };
            bodyView.AddChidren(btnGestureIcon);
//        /// <summary>
//        ///
//        /// </summary>
//        /// <param name="optionType">
//        /// 操作方式:
//        /// 1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;
//        /// 5:关闭指纹ID;6:关闭面容ID;7:解锁验证
//        /// </param>
//        public void LoadPage(string optionType)
//        {
//            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
//            //解锁验证无法后退,必须验证
//            if (optionType != "7")
//            {
//                if (oldPasswrod == "")
//                    new TopViewDiv(bodyView, Language.StringByID(StringId.SetGesturePassword)).LoadTopView();
//                else
//                    new TopViewDiv(bodyView, Language.StringByID(StringId.VerifyGesturePassword)).LoadTopView();
//            }
//            Button btnGestureIcon = new Button()
//            {
//                Y = Application.GetRealHeight(96),
//                Gravity = Gravity.CenterHorizontal,
//                Width = Application.GetRealWidth(64),
//                Height = Application.GetRealWidth(64),
//                //UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/GestureGrayIcon.png",
//            };
//            bodyView.AddChidren(btnGestureIcon);
            Button btnTipTitle = new Button()
            {
                Y = Application.GetRealHeight(4) + btnGestureIcon.Bottom,
                TextAlignment = TextAlignment.Center,
                Height = Application.GetRealHeight(36),
                IsBold = true,
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
                TextID =  StringId.VerifyGesturePassword,
            };
            bodyView.AddChidren(btnTipTitle);
//            Button btnTipTitle = new Button()
//            {
//                Y = Application.GetRealHeight(4) + btnGestureIcon.Bottom,
//                TextAlignment = TextAlignment.Center,
//                Height = Application.GetRealHeight(36),
//                IsBold = true,
//                TextColor = CSS_Color.FirstLevelTitleColor,
//                TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
//                TextID =  StringId.VerifyGesturePassword,
//            };
//            bodyView.AddChidren(btnTipTitle);
            btnTipMsg = new Button()
            {
                Y = btnTipTitle.Bottom,
                TextAlignment = TextAlignment.Center,
                Height = Application.GetRealHeight(36),
                IsBold = true,
                TextColor = CSS_Color.TextualColor,
                SelectedTextColor = CSS_Color.WarningColor,
                TextSize = CSS_FontSize.TextFontSize,
                TextID = StringId.DrawUnlockPattern,
            };
            bodyView.AddChidren(btnTipMsg);
//            btnTipMsg = new Button()
//            {
//                Y = btnTipTitle.Bottom,
//                TextAlignment = TextAlignment.Center,
//                Height = Application.GetRealHeight(36),
//                IsBold = true,
//                TextColor = CSS_Color.TextualColor,
//                SelectedTextColor = CSS_Color.WarningColor,
//                TextSize = CSS_FontSize.TextFontSize,
//                TextID = StringId.DrawUnlockPattern,
//            };
//            bodyView.AddChidren(btnTipMsg);
            if (optionType == "1")
            {
                btnTipMsg.TextID = string.IsNullOrEmpty(oldPasswrod) ? StringId.DrawUnlockPattern : StringId.DrawUnlockPatternAgain;
                //设置手势密码
                btnTipTitle.TextID = StringId.SetGesturePassword;
            }else if(optionType == "2")
            {
                //请输入原手势密码
                btnTipTitle.TextID = StringId.PleaseDrawTheOriginalGesturePassword;
            }
//            if (optionType == "1")
//            {
//                btnTipMsg.TextID = string.IsNullOrEmpty(oldPasswrod) ? StringId.DrawUnlockPattern : StringId.DrawUnlockPatternAgain;
//                //设置手势密码
//                btnTipTitle.TextID = StringId.SetGesturePassword;
//            }else if(optionType == "2")
//            {
//                //请输入原手势密码
//                btnTipTitle.TextID = StringId.PleaseDrawTheOriginalGesturePassword;
//            }
            //if (optionType == "7")
            //{
            //    //请绘制解锁图案
            //    btnTipTitle.TextID = StringId.DrawUnlockPattern;
            //}
//            //if (optionType == "7")
//            //{
//            //    //请绘制解锁图案
//            //    btnTipTitle.TextID = StringId.DrawUnlockPattern;
//            //}
            GestureLockView mGestureLockView = new GestureLockView
            {
                Y = Application.GetRealHeight(260),
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(215),
                Height = Application.GetRealWidth(215),
                LockViewCorrectColor = CSS_Color.MainColor,//0xFF00FF00,//默认和正确 时显示的颜色
                LockViewErrorColor = 0xFFFF0000, //错误时 显示的颜色
                BackgroundColor = CSS_Color.BackgroundColor,
            };
            bodyView.AddChidren(mGestureLockView);
            mGestureLockView.SetSolidType(true);
            //滑动结束 回调密码结果和密码长度
            mGestureLockView.OnLockVerifyEvent += (selectNumStr, selectCount) =>
            {
                //自行验证密码,提示正确或者错误 false为显示红色错误, 自行选择调用时机
                mGestureLockView.showCorrectStatus(false);
                if (selectCount < 4)
                {
                    btnTipMsg.Text = Language.StringByID(StringId.DrawingLengthError);
                    btnTipMsg.TextColor = CSS_Color.WarningColor;
                    return;
                }
//            GestureLockView mGestureLockView = new GestureLockView
//            {
//                Y = Application.GetRealHeight(260),
//                Gravity = Gravity.CenterHorizontal,
//                Width = Application.GetRealWidth(215),
//                Height = Application.GetRealWidth(215),
//                LockViewCorrectColor = CSS_Color.MainColor,//0xFF00FF00,//默认和正确 时显示的颜色
//                LockViewErrorColor = 0xFFFF0000, //错误时 显示的颜色
//                BackgroundColor = CSS_Color.BackgroundColor,
//            };
//            bodyView.AddChidren(mGestureLockView);
//            mGestureLockView.SetSolidType(true);
//            //滑动结束 回调密码结果和密码长度
//            mGestureLockView.OnLockVerifyEvent += (selectNumStr, selectCount) =>
//            {
//                //自行验证密码,提示正确或者错误 false为显示红色错误, 自行选择调用时机
//                mGestureLockView.showCorrectStatus(false);
//                if (selectCount < 4)
//                {
//                    btnTipMsg.Text = Language.StringByID(StringId.DrawingLengthError);
//                    btnTipMsg.TextColor = CSS_Color.WarningColor;
//                    return;
//                }
                passwrod = selectNumStr;
//                passwrod = selectNumStr;
                if (string.IsNullOrEmpty(oldPasswrod))
                {
                    this.RemoveFromParent();
                    var page = new AppUnlockGesturePage(passwrod, backAction);
                    MainPage.BasePageView.AddChidren(page);
                    page.LoadPage(optionType);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                }
                else
                {
                    //2020-12-11 密码校验
                    if (passwrod == oldPasswrod)
                    {
                        //密码验证通过
                        PasswordInputPassed(optionType);
                    }
                    else
                    {
                        //密码验证失败
                        PasswordInputError(optionType);
                    }
//                if (string.IsNullOrEmpty(oldPasswrod))
//                {
//                    this.RemoveFromParent();
//                    var page = new AppUnlockGesturePage(passwrod, backAction);
//                    MainPage.BasePageView.AddChidren(page);
//                    page.LoadPage(optionType);
//                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
//                }
//                else
//                {
//                    //2020-12-11 密码校验
//                    if (passwrod == oldPasswrod)
//                    {
//                        //密码验证通过
//                        PasswordInputPassed(optionType);
//                    }
//                    else
//                    {
//                        //密码验证失败
//                        PasswordInputError(optionType);
//                    }
                    
                }
//                }
            };
//            };
            
            if (optionType == "7")
            {
                //使用账户密码登录按钮 提示按钮
                AddLoginTipButton();
            }
            else if (optionType != "1")
            {
                //输入登录密码验证 提示按钮
                AddInputPasswordTipButton(optionType);
            }
//            if (optionType == "7")
//            {
//                //使用账户密码登录按钮 提示按钮
//                AddLoginTipButton();
//            }
//            else if (optionType != "1")
//            {
//                //输入登录密码验证 提示按钮
//                AddInputPasswordTipButton(optionType);
//            }
            //if (optionType == "5" || optionType == "6" || optionType == "7")
            //{
            //    Button btnLoginAccountVerify = new Button()
            //    {
            //        Y = Application.GetRealHeight(517),
            //        Height = Application.GetRealHeight(60),
            //        TextAlignment = TextAlignment.Center,
            //        TextSize = CSS_FontSize.TextFontSize,
            //        TextColor = CSS_Color.MainColor,
            //        TextID = StringId.EnterLoginPasswordVerification,
            //    };
            //    bodyView.AddChidren(btnLoginAccountVerify);
//            //if (optionType == "5" || optionType == "6" || optionType == "7")
//            //{
//            //    Button btnLoginAccountVerify = new Button()
//            //    {
//            //        Y = Application.GetRealHeight(517),
//            //        Height = Application.GetRealHeight(60),
//            //        TextAlignment = TextAlignment.Center,
//            //        TextSize = CSS_FontSize.TextFontSize,
//            //        TextColor = CSS_Color.MainColor,
//            //        TextID = StringId.EnterLoginPasswordVerification,
//            //    };
//            //    bodyView.AddChidren(btnLoginAccountVerify);
            //    btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
            //    {
            //        if (optionType == "7")
            //        {
            //            MainPage.GoLoginPage(UserInfo.Current);
            //        }
            //        else
            //        {
            //            Action<string> action = (pw) =>
            //            {
            //                var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
            //                if (resultObj.Code == StateCode.SUCCESS)
            //                {
            //                    UserInfo.Current.appUnlockPasswrod = "";
            //                    UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>();
            //                    UserInfo.Current.SaveUserInfo();
            //                    this.RemoveFromParent();
            //                    backAction();
            //                }
            //                else
            //                {
            //                    //登录失败
            //                    IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
            //                }
//            //    btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
//            //    {
//            //        if (optionType == "7")
//            //        {
//            //            MainPage.GoLoginPage(UserInfo.Current);
//            //        }
//            //        else
//            //        {
//            //            Action<string> action = (pw) =>
//            //            {
//            //                var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
//            //                if (resultObj.Code == StateCode.SUCCESS)
//            //                {
//            //                    UserInfo.Current.appUnlockPasswrod = "";
//            //                    UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>();
//            //                    UserInfo.Current.SaveUserInfo();
//            //                    this.RemoveFromParent();
//            //                    backAction();
//            //                }
//            //                else
//            //                {
//            //                    //登录失败
//            //                    IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
//            //                }
            //            };
            //            new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true);
            //        }
            //    };
            //}
        }
//            //            };
//            //            new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true);
//            //        }
//            //    };
//            //}
//        }
        /// <summary>
        /// 手势密码输入错误显示错误信息
        /// </summary>
        /// <param name="optionType">1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;5:指纹ID开关;6:面容ID开关;7:解锁验证</param>
        void PasswordInputError(string optionType)
        {
            int errorTextID = 0;
            if (optionType == "1")
            {
                //2次绘制点图案不一致,请重新绘制
                errorTextID = StringId.DrawingInconsistencyError;
            }
            else
            {
                //验证失败,密码错误.
                errorTextID = StringId.AuthenticationFailedPasswordError;
            }
//        /// <summary>
//        /// 手势密码输入错误显示错误信息
//        /// </summary>
//        /// <param name="optionType">1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;5:指纹ID开关;6:面容ID开关;7:解锁验证</param>
//        void PasswordInputError(string optionType)
//        {
//            int errorTextID = 0;
//            if (optionType == "1")
//            {
//                //2次绘制点图案不一致,请重新绘制
//                errorTextID = StringId.DrawingInconsistencyError;
//            }
//            else
//            {
//                //验证失败,密码错误.
//                errorTextID = StringId.AuthenticationFailedPasswordError;
//            }
            btnTipMsg.TextID = errorTextID;
            btnTipMsg.IsSelected = true;
            btnTipMsg.Visible = true;
        }
//            btnTipMsg.TextID = errorTextID;
//            btnTipMsg.IsSelected = true;
//            btnTipMsg.Visible = true;
//        }
        /// <summary>
        /// 手势密码验证通过后的操作
        /// </summary>
        /// <param name="optionType">1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;5:指纹ID开关;6:面容ID开关;7:解锁验证</param>
        void PasswordInputPassed(string optionType)
        {
            if (optionType == "1")
            {
                //设置密码 验证通过
                this.RemoveFromParent();
                var page = new OperationResultDisPalyPage();
                page.Show();
                page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), "");
                //page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), "");
                string tipMsg = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? Language.StringByID(StringId.TurnOnFingerprintUnlocking) :
                                Language.StringByID(StringId.TurnOnFaceIdUnlocking);
                if (TouchIDUtils.getTouchIDSupperType() != TouchIDUtils.TouchIDSupperType.None)
                {
                    var unlockType = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? "3" : "4";
//        /// <summary>
//        /// 手势密码验证通过后的操作
//        /// </summary>
//        /// <param name="optionType">1:设置密码;2:验证密码;3:关闭密码;4:关闭解锁设置;5:指纹ID开关;6:面容ID开关;7:解锁验证</param>
//        void PasswordInputPassed(string optionType)
//        {
//            if (optionType == "1")
//            {
//                //设置密码 验证通过
//                this.RemoveFromParent();
//                var page = new OperationResultDisPalyPage();
//                page.Show();
//                page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), "");
//                //page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), "");
//                string tipMsg = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? Language.StringByID(StringId.TurnOnFingerprintUnlocking) :
//                                Language.StringByID(StringId.TurnOnFaceIdUnlocking);
//                if (TouchIDUtils.getTouchIDSupperType() != TouchIDUtils.TouchIDSupperType.None)
//                {
//                    var unlockType = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? "3" : "4";
                    //如果之前没设置指纹或者面容ID才显示是否开启
                    if (!UserInfo.Current.appUnlockType.Contains(unlockType))
                    {
                        Action<bool> action = (result) =>
                    {
                        if (result)
                        {
                            if (!UserInfo.Current.appUnlockType.Contains(unlockType))
                            {
                                UserInfo.Current.appUnlockType.Add(unlockType);
                            }
                        }
                        else
                        {
                            if (UserInfo.Current.appUnlockType.Contains(unlockType))
                            {
                                UserInfo.Current.appUnlockType.Remove(unlockType);
                            }
                        }
                        UserInfo.Current.SaveUserInfo();
                        backAction();
                    };
                        page.AdditionalOperations(tipMsg, action);
                    }
                }
                if (!UserInfo.Current.appUnlockType.Contains("2"))
                {
                    UserInfo.Current.appUnlockType.Add("2");
                }
                UserInfo.Current.appUnlockPasswrod = passwrod;
                UserInfo.Current.SaveUserInfo();
                backAction();
            }
            else if (optionType == "2")
            {
                //验证密码通过
                //移除当前界面,每次返回都返回到最上级
                this.RemoveFromParent();
                var page = new AppUnlockGesturePage("", backAction);
                MainPage.BasePageView.AddChidren(page);
                page.LoadPage("1");
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            }
            else if (optionType == "3" || optionType == "4")
            {
                //3:关闭密码;4:关闭解锁设置 通过
                if (optionType == "4")
                {
                    backAction();
                    this.RemoveFromParent();
                    return;
                }
                if (UserInfo.Current.appUnlockType.Contains("2"))
                {
                    UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>();
                    UserInfo.Current.appUnlockPasswrod = "";
                    UserInfo.Current.SaveUserInfo();
                    this.RemoveFromParent();
                    backAction();
                }
//                    //如果之前没设置指纹或者面容ID才显示是否开启
//                    if (!UserInfo.Current.appUnlockType.Contains(unlockType))
//                    {
//                        Action<bool> action = (result) =>
//                    {
//                        if (result)
//                        {
//                            if (!UserInfo.Current.appUnlockType.Contains(unlockType))
//                            {
//                                UserInfo.Current.appUnlockType.Add(unlockType);
//                            }
//                        }
//                        else
//                        {
//                            if (UserInfo.Current.appUnlockType.Contains(unlockType))
//                            {
//                                UserInfo.Current.appUnlockType.Remove(unlockType);
//                            }
//                        }
//                        UserInfo.Current.SaveUserInfo();
//                        backAction();
//                    };
//                        page.AdditionalOperations(tipMsg, action);
//                    }
//                }
//                if (!UserInfo.Current.appUnlockType.Contains("2"))
//                {
//                    UserInfo.Current.appUnlockType.Add("2");
//                }
//                UserInfo.Current.appUnlockPasswrod = passwrod;
//                UserInfo.Current.SaveUserInfo();
//                backAction();
//            }
//            else if (optionType == "2")
//            {
//                //验证密码通过
//                //移除当前界面,每次返回都返回到最上级
//                this.RemoveFromParent();
//                var page = new AppUnlockGesturePage("", backAction);
//                MainPage.BasePageView.AddChidren(page);
//                page.LoadPage("1");
//                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
//            }
//            else if (optionType == "3" || optionType == "4")
//            {
//                //3:关闭密码;4:关闭解锁设置 通过
//                if (optionType == "4")
//                {
//                    backAction();
//                    this.RemoveFromParent();
//                    return;
//                }
//                if (UserInfo.Current.appUnlockType.Contains("2"))
//                {
//                    UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>();
//                    UserInfo.Current.appUnlockPasswrod = "";
//                    UserInfo.Current.SaveUserInfo();
//                    this.RemoveFromParent();
//                    backAction();
//                }
            }
            else if (optionType == "5")
            {
                //5:指纹ID开关 通过
                if (UserInfo.Current.appUnlockType.Contains("3"))
                    UserInfo.Current.appUnlockType.Remove("3");
                else
                    UserInfo.Current.appUnlockType.Add("3");
//            }
//            else if (optionType == "5")
//            {
//                //5:指纹ID开关 通过
//                if (UserInfo.Current.appUnlockType.Contains("3"))
//                    UserInfo.Current.appUnlockType.Remove("3");
//                else
//                    UserInfo.Current.appUnlockType.Add("3");
                UserInfo.Current.SaveUserInfo();
                this.RemoveFromParent();
                backAction();
            }
            else if (optionType == "6")
            {
                //6:面容ID开关 通过
                if (UserInfo.Current.appUnlockType.Contains("4"))
                    UserInfo.Current.appUnlockType.Remove("4");
                else
                    UserInfo.Current.appUnlockType.Add("4");
//                UserInfo.Current.SaveUserInfo();
//                this.RemoveFromParent();
//                backAction();
//            }
//            else if (optionType == "6")
//            {
//                //6:面容ID开关 通过
//                if (UserInfo.Current.appUnlockType.Contains("4"))
//                    UserInfo.Current.appUnlockType.Remove("4");
//                else
//                    UserInfo.Current.appUnlockType.Add("4");
                UserInfo.Current.SaveUserInfo();
                this.RemoveFromParent();
//                UserInfo.Current.SaveUserInfo();
//                this.RemoveFromParent();
            }
            else if (optionType == "7")
            {
                //7:解锁验证 通过
                this.RemoveFromParent();
                backAction();
            }
        }
//            }
//            else if (optionType == "7")
//            {
//                //7:解锁验证 通过
//                this.RemoveFromParent();
//                backAction();
//            }
//        }
        /// <summary>
        /// 使用账户密码登录按钮 提示按钮
        /// </summary>
        void AddLoginTipButton()
        {
            Button btnLoginAccountVerify = new Button()
            {
                Y = Application.GetRealHeight(517),
                Height = Application.GetRealHeight(60),
                TextAlignment = TextAlignment.Center,
                TextSize = CSS_FontSize.TextFontSize,
                TextColor = CSS_Color.MainColor,
                TextID = StringId.LogWithAccountAndPassword,
            };
            bodyView.AddChidren(btnLoginAccountVerify);
//        /// <summary>
//        /// 使用账户密码登录按钮 提示按钮
//        /// </summary>
//        void AddLoginTipButton()
//        {
//            Button btnLoginAccountVerify = new Button()
//            {
//                Y = Application.GetRealHeight(517),
//                Height = Application.GetRealHeight(60),
//                TextAlignment = TextAlignment.Center,
//                TextSize = CSS_FontSize.TextFontSize,
//                TextColor = CSS_Color.MainColor,
//                TextID = StringId.LogWithAccountAndPassword,
//            };
//            bodyView.AddChidren(btnLoginAccountVerify);
            btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
            {
                //退出登录
                HDLCommon.Current.Logout();
            };
        }
//            btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
//            {
//                //退出登录
//                HDLCommon.Current.Logout();
//            };
//        }
        /// <summary>
        /// 输入登录密码验证 提示按钮
        /// </summary>
        void AddInputPasswordTipButton(string optionType)
        {
            Button btnLoginAccountVerify = new Button()
            {
                Y = Application.GetRealHeight(517),
                Height = Application.GetRealHeight(60),
                TextAlignment = TextAlignment.Center,
                TextSize = CSS_FontSize.TextFontSize,
                TextColor = CSS_Color.MainColor,
                TextID = StringId.EnterLoginPasswordVerification,
            };
            bodyView.AddChidren(btnLoginAccountVerify);
//        /// <summary>
//        /// 输入登录密码验证 提示按钮
//        /// </summary>
//        void AddInputPasswordTipButton(string optionType)
//        {
//            Button btnLoginAccountVerify = new Button()
//            {
//                Y = Application.GetRealHeight(517),
//                Height = Application.GetRealHeight(60),
//                TextAlignment = TextAlignment.Center,
//                TextSize = CSS_FontSize.TextFontSize,
//                TextColor = CSS_Color.MainColor,
//                TextID = StringId.EnterLoginPasswordVerification,
//            };
//            bodyView.AddChidren(btnLoginAccountVerify);
            btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
            {
                //输入登录密码验证
                Action<string> action = (pw) =>
                {
                    AuthenticationByLoginPassword(pw, optionType);
                    //var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
                    //if (resultObj.Code == StateCode.SUCCESS)
                    //{
                    //    PasswordInputPassed(optionType);
                    //}
                    //else
                    //{
                    //    Application.RunOnMainThread(() =>
                    //    {
                    //        Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError));
                    //    });
                    //}
//            btnLoginAccountVerify.MouseUpEventHandler = (sender, e) =>
//            {
//                //输入登录密码验证
//                Action<string> action = (pw) =>
//                {
//                    AuthenticationByLoginPassword(pw, optionType);
//                    //var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
//                    //if (resultObj.Code == StateCode.SUCCESS)
//                    //{
//                    //    PasswordInputPassed(optionType);
//                    //}
//                    //else
//                    //{
//                    //    Application.RunOnMainThread(() =>
//                    //    {
//                    //        Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError));
//                    //    });
//                    //}
                };
                new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true);
            };
        }
//                };
//                new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true);
//            };
//        }
        /// <summary>
        /// 登录密码验证
        /// </summary>
        /// <param name="pw"></param>
        /// <param name="optionType"></param>
        void AuthenticationByLoginPassword(string pw, string optionType)
        {
            var waitPage = new Loading();
            bodyView.AddChidren(waitPage);
            waitPage.Start(Language.StringByID(StringId.PleaseWait));
//        /// <summary>
//        /// 登录密码验证
//        /// </summary>
//        /// <param name="pw"></param>
//        /// <param name="optionType"></param>
//        void AuthenticationByLoginPassword(string pw, string optionType)
//        {
//            var waitPage = new Loading();
//            bodyView.AddChidren(waitPage);
//            waitPage.Start(Language.StringByID(StringId.PleaseWait));
            new System.Threading.Thread(() =>
            {
                try
                {
                    var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
                    Application.RunOnMainThread(() =>
                    {
                        if (resultObj.Code == StateCode.SUCCESS)
                        {
                            PasswordInputPassed(optionType);
                        }
                        else
                        {
                            Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError));
                        }
                    });
                }
                catch { }
                finally
                {
                    Application.RunOnMainThread(() =>
                    {
                        if (waitPage != null)
                        {
                            waitPage.RemoveFromParent();
                            waitPage = null;
                        }
                    });
                }
            })
            { IsBackground = true }.Start();
        }
    }
}
//            new System.Threading.Thread(() =>
//            {
//                try
//                {
//                    var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw);
//                    Application.RunOnMainThread(() =>
//                    {
//                        if (resultObj.Code == StateCode.SUCCESS)
//                        {
//                            PasswordInputPassed(optionType);
//                        }
//                        else
//                        {
//                            Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError));
//                        }
//                    });
//                }
//                catch { }
//                finally
//                {
//                    Application.RunOnMainThread(() =>
//                    {
//                        if (waitPage != null)
//                        {
//                            waitPage.RemoveFromParent();
//                            waitPage = null;
//                        }
//                    });
//                }
//            })
//            { IsBackground = true }.Start();
//        }
//    }
//}