From 84e76cf2fcbe26142750131d3c27eaac0335e40a Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 11 三月 2021 11:04:08 +0800
Subject: [PATCH] 上传一个添加红外宝 Ios 版本
---
HDL_ON/UI/UI1-Login/RegisterPage.cs | 445 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 408 insertions(+), 37 deletions(-)
diff --git a/HDL_ON/UI/UI1-Login/RegisterPage.cs b/HDL_ON/UI/UI1-Login/RegisterPage.cs
index fd4be00..0885191 100644
--- a/HDL_ON/UI/UI1-Login/RegisterPage.cs
+++ b/HDL_ON/UI/UI1-Login/RegisterPage.cs
@@ -1,5 +1,8 @@
锘縰sing System;
+using System.Collections.Generic;
+using System.Threading;
using HDL_ON.DAL.Server;
+using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using Shared;
@@ -24,6 +27,36 @@
/// 閫夋嫨閭鐧诲綍鎸夐挳
/// </summary>
Button btnEmailLogin;
+ #region 鏈嶅姟鍣ㄩ�夋嫨
+ /// <summary>
+ /// 鏈嶅姟鍣ㄥ尯鍩�
+ /// </summary>
+ FrameLayout serverView;
+ /// <summary>
+ /// 鏈嶅姟鍣↖con鎸夐挳
+ /// </summary>
+ Button btnServerIcon;
+ /// <summary>
+ /// 鏈嶅姟鍣ㄦ枃鏈
+ /// </summary>
+ Button btnServerText;
+ ///// <summary>
+ ///// 鏈嶅姟鍣ㄦ枃鏈
+ ///// </summary>
+ //EditText etServer;
+ ///// <summary>
+ ///// 鏈嶅姟鍣ㄥ瓙鍖哄煙閲岄潰鐨勫垎鍓茬嚎1
+ ///// </summary>
+ //Button btnLineVertical_server;
+ /// <summary>
+ ///鏈嶅姟鍣╣o鎸夐挳
+ /// </summary>
+ Button btnServerGo;
+ /// <summary>
+ /// 鏈嶅姟鍣ㄥ瓙鍖哄煙搴曢儴妯嚎
+ /// </summary>
+ Button btnServerBottomLine;
+ #endregion
/// <summary>
/// 璐﹀彿瀛愬尯鍩�
/// </summary>
@@ -47,7 +80,7 @@
/// <summary>
/// 璐﹀彿瀛愬尯鍩熷簳閮ㄦí绾�
/// </summary>
- Button btnAccountViewBottomLine;
+ Button btnVerificationCodeViewBottomLine;
/// <summary>
/// 瀵嗙爜瀛愬尯鍩�
/// </summary>
@@ -116,11 +149,15 @@
/// <summary>
/// 鑾峰彇楠岃瘉鐮佹寜閽�
/// </summary>
- Button btnGetVerificationCode;
+ Button btnGetVerificationCode_Phone;
+ /// <summary>
+ /// 鑾峰彇楠岃瘉鐮佹寜閽�
+ /// </summary>
+ Button btnGetVerificationCode_Mail;
/// <summary>
/// 楠岃瘉鐮佸瓙鍖哄煙搴曢儴鍒嗗壊绾�
/// </summary>
- Button btnVerificationCodeViewBottomLine;
+ Button btnAccountViewBottomLine;
/// <summary>
/// 娉ㄥ唽鎸夐挳
/// </summary>
@@ -129,12 +166,12 @@
#endregion
#region 灞�閮ㄥ彉閲忓垪琛�
- /// <summary>
- /// 璐﹀彿绫诲瀷
- /// 0:鎵嬫満
- /// 1:閭
- /// </summary>
- int accountType = 0;
+ ///// <summary>
+ ///// 璐﹀彿绫诲瀷
+ ///// 0:鎵嬫満
+ ///// 1:閭
+ ///// </summary>
+ //int accountType = 0;
/// <summary>
/// 鎵嬫満鍙风爜鏄惁鏈夋晥
/// </summary>
@@ -150,40 +187,81 @@
/// <summary>
/// 鍥炶皟浜嬩欢
/// </summary>
- Action<string> callbackAction;
+ //Action callbackAction;
/// <summary>
/// 娉ㄥ唽绫诲瀷
/// 0:鎵嬫満
/// 1:閭
/// </summary>
- int registerType;
+ int registerType = 0;
+ /// <summary>
+ /// 鎵嬫満鍖哄彿
+ /// </summary>
+ string phoneZoneCode = "86";
+ /// <summary>
+ /// 鏄惁閫夋嫨杩囨湇鍔″櫒
+ /// </summary>
+ bool isSelectServer;
+
+ string registerPhone;
+ string registerEmail;
+ /// <summary>
+ /// 鏄惁鐐瑰嚮浜嗚繑鍥烇紝鐢ㄤ簬灞忚斀EditText澶卞幓鐒︾偣妫�娴嬩簨浠�
+ /// </summary>
+ bool isHitBack;
#endregion
- public RegisterPage()
- {
- bodyView = new FrameLayout()
- {
- BackgroundColor = CSS_Color.BackgroundColor,
- };
- AddChidren(bodyView);
- pm = new HttpServerRequest();
- }
+ /// <summary>
+ /// 鍥炶皟浜嬩欢
+ /// 璐﹀彿锛屽瘑鐮侊紝鏄惁鎵嬫満
+ /// account锛宲assword锛宨sPhone
+ /// </summary>
+ Action<string, string, bool> AutoLoginAction;
- public RegisterPage(Action<string> action)
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="autoLoginAction">娉ㄥ唽鎴愬姛鍥炶皟浜嬩欢</param>
+ public RegisterPage(Action<string, string, bool> autoLoginAction)
{
+ AutoLoginAction = autoLoginAction;
+
bodyView = new FrameLayout()
{
BackgroundColor = CSS_Color.MainBackgroundColor,
};
AddChidren(bodyView);
+ //2020-12-22 澧炲姞鐐瑰嚮闅愯棌閿洏浜嬩欢
+ bodyView.MouseDownEventHandler += (sender, e) => {
+ Application.HideSoftInput();
+ };
+
pm = new HttpServerRequest();
- callbackAction = action;
}
+
+ //public RegisterPage(Action action)
+ //{
+ // bodyView = new FrameLayout()
+ // {
+ // BackgroundColor = CSS_Color.MainBackgroundColor,
+ // };
+ // AddChidren(bodyView);
+ // pm = new HttpServerRequest();
+ // callbackAction = action;
+ //}
public void ShowDialog()
{
- new PublicAssmebly().LoadTopView(this, bodyView, Language.StringByID(StringId.Register));
+ Action backAction = () =>
+ {
+ isHitBack = true;
+ //2020-12-22 澧炲姞鐐瑰嚮闅愯棌閿洏浜嬩欢
+ Application.HideSoftInput();
+ };
+
+ new TopViewDiv(this, bodyView, Language.StringByID(StringId.Register)).LoadTopView(backAction);
+ //new PublicAssmebly().LoadTopView(this, bodyView, Language.StringByID(StringId.Register));
#region 娉ㄥ唽鏂瑰紡閫夋嫨
btnPhoneLogin = new Button()
@@ -192,7 +270,7 @@
Y = Application.GetRealHeight(112),
Width = Application.GetRealWidth(120),
Height = Application.GetRealHeight(40),
- TextID = StringId.LoginByPhone,
+ TextID = StringId.RegisterByPhone,
TextColor = CSS_Color.MainColor,
TextAlignment = TextAlignment.CenterLeft,
TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
@@ -205,19 +283,79 @@
Y = Application.GetRealHeight(112),
Width = Application.GetRealWidth(100),
Height = Application.GetRealHeight(40),
- TextID = StringId.LoginByEmail,
+ TextID = StringId.RegisterByEmail,
TextColor = CSS_Color.PromptingColor1,
TextAlignment = TextAlignment.Center,
TextSize = CSS_FontSize.TextFontSize,
};
bodyView.AddChidren(btnEmailLogin);
+ if(Language.CurrentLanguage!= "Chinese")
+ {
+ btnPhoneLogin.Width = Application.GetRealWidth(180);
+ btnEmailLogin.Width = Application.GetRealWidth(180);
+ }
#endregion
+ #region 鏈嶅姟鍣ㄩ�夋嫨
+ serverView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(28),
+ Y = Application.GetRealHeight(167),
+ Width = Application.GetRealWidth(319),
+ Height = Application.GetRealHeight(44),
+ };
+ bodyView.AddChidren(serverView);
+
+ btnServerIcon = new Button()
+ {
+ X = Application.GetRealWidth(9),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(20),
+ Height = Application.GetMinRealAverage(20),
+ UnSelectedImagePath = "LoginIcon/Server.png",
+
+ };
+ serverView.AddChidren(btnServerIcon);
+
+ btnServerText = new Button()
+ {
+ X = Application.GetRealWidth(49),
+ Width = Application.GetRealWidth(319 - 78),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.PleaseSelectCountryOrRegion,
+ };
+ serverView.AddChidren(btnServerText);
+
+ #region 瀵嗙爜鐧诲綍-鎺т欢鍔犺浇
+ btnServerGo = new Button()
+ {
+ X = Application.GetRealWidth(303),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(16),
+ Height = Application.GetMinRealAverage(16),
+ UnSelectedImagePath = "Public/Right.png",
+ };
+ serverView.AddChidren(btnServerGo);
+
+ #endregion
+ btnServerBottomLine = new Button()
+ {
+ Y = Application.GetRealHeight(42),
+ BackgroundColor = CSS_Color.DividingLineColor,
+ SelectedBackgroundColor = CSS_Color.MainColor,
+ Height = Application.GetRealHeight(1),
+ };
+ serverView.AddChidren(btnServerBottomLine);
+ #endregion
+
+ int topPadding = Application.GetRealHeight(12);
#region 璐﹀彿濉啓
accountView = new FrameLayout()
{
X = Application.GetRealWidth(28),
- Y = Application.GetRealHeight(167),
+ Y = serverView.Bottom + topPadding,
Width = Application.GetRealWidth(319),
Height = Application.GetRealHeight(44),
};
@@ -229,10 +367,23 @@
X = Application.GetRealWidth(9),
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.FirstLevelTitleColor,
- Text = "+86",
+ Text = "+" + phoneZoneCode,
TextSize = CSS_FontSize.TextFontSize,
};
- if (accountType == 0)
+
+ //璺宠浆鍥藉鍖哄彿閫夋嫨鐣岄潰
+ EventHandler<MouseEventArgs> eHandler = (sender, e) => {
+ JLCountrycode.CountryCodeView.Current.Show((countryName, code) => {
+ if (!string.IsNullOrEmpty(code))
+ {
+ phoneZoneCode = code;
+ btnGlobalRoaming.Text = "+" + phoneZoneCode;
+ }
+ });
+ };
+ btnGlobalRoaming.MouseUpEventHandler += eHandler;
+
+ if (registerType == 0)
{
accountView.AddChidren(btnGlobalRoaming);
}
@@ -256,6 +407,7 @@
TextSize = CSS_FontSize.TextFontSize,
PlaceholderTextColor = CSS_Color.PromptingColor1,
PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber),
+ IsNumberKeyboardType = true
};
accountView.AddChidren(etAccount);
@@ -275,7 +427,7 @@
Height = Application.GetMinRealAverage(20),
UnSelectedImagePath = "LoginIcon/AccountIcon.png",
};
- if (accountType == 1)
+ if (registerType == 1)
{
accountView.AddChidren(btnAccountIcon);
}
@@ -285,7 +437,7 @@
passwordView = new FrameLayout()
{
X = Application.GetRealWidth(28),
- Y = Application.GetRealHeight(223),
+ Y = accountView.Bottom + topPadding,
Width = Application.GetRealWidth(319),
Height = Application.GetRealHeight(44),
};
@@ -351,7 +503,7 @@
repeatPasswordView = new FrameLayout()
{
X = Application.GetRealWidth(28),
- Y = Application.GetRealHeight(279),
+ Y = passwordView.Bottom + topPadding,
Width = Application.GetRealWidth(319),
Height = Application.GetRealHeight(44),
};
@@ -419,7 +571,8 @@
verificationCodeView = new FrameLayout()
{
X = Application.GetRealWidth(28),
- Y = Application.GetRealHeight(335),
+ Y = repeatPasswordView.Bottom + topPadding,
+ //Y = Application.GetRealHeight(335),
Width = Application.GetRealWidth(319),
Height = Application.GetRealHeight(44),
};
@@ -457,7 +610,7 @@
};
verificationCodeView.AddChidren(etVerificationCode);
- btnGetVerificationCode = new Button()
+ btnGetVerificationCode_Phone = new Button()
{
X = Application.GetRealWidth(219),
Width = Application.GetRealWidth(100),
@@ -467,7 +620,20 @@
TextAlignment = TextAlignment.CenterRight,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
};
- verificationCodeView.AddChidren(btnGetVerificationCode);
+ verificationCodeView.AddChidren(btnGetVerificationCode_Phone);
+
+ btnGetVerificationCode_Mail = new Button()
+ {
+ X = Application.GetRealWidth(219),
+ Width = Application.GetRealWidth(100),
+ TextID = StringId.GetVerificationCode,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextColor = CSS_Color.PromptingColor1,
+ TextAlignment = TextAlignment.CenterRight,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ Visible = false
+ };
+ verificationCodeView.AddChidren(btnGetVerificationCode_Mail);
btnVerificationCodeViewBottomLine = new Button()
{
@@ -483,10 +649,11 @@
btnRegister = new Button()
{
Gravity = Gravity.CenterHorizontal,
- Y = Application.GetRealHeight(421),
+ Y = verificationCodeView.Bottom + Application.GetRealHeight(42),
+ //Y = Application.GetRealHeight(421),
Width = Application.GetRealWidth(220),
- Height = Application.GetRealHeight(44),
- Radius = (uint)Application.GetRealHeight(22),
+ Height = Application.GetRealWidth(44),
+ Radius = (uint)Application.GetRealWidth(22),
SelectedBackgroundColor = CSS_Color.MainColor,
BackgroundColor = CSS_Color.PromptingColor1,
TextID = StringId.Register,
@@ -498,5 +665,209 @@
LoadEventList();
}
+
+
+ /// <summary>
+ /// 娉ㄥ唽鎴愬姛涔嬪悗鑷姩鐧诲綍
+ /// </summary>
+ void LoadEvent_AutoLogin(string account, string password)
+ {
+ Dialog dialog = new Dialog();
+
+ FrameLayout frame = new FrameLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(198),
+ Width = Application.GetRealWidth(288),
+ Height = Application.GetRealHeight(206),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ BorderWidth = 0,
+ BorderColor = 0x00000000,
+ };
+ dialog.AddChidren(frame);
+
+ Button btnAccountText = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(40),
+ Height = Application.GetRealHeight(17 + 14 + 14),
+ IsMoreLines = true,
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = account,
+ };
+ frame.AddChidren(btnAccountText);
+
+ Button btnTipRegisterSuccess = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(123),
+ Height = Application.GetRealHeight(30),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.CongratulationsRegistration,
+ };
+ frame.AddChidren(btnTipRegisterSuccess);
+
+ Button btnAutoLoginTip = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = btnTipRegisterSuccess.Bottom,
+ Height = Application.GetRealHeight(17 + 8),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextID = StringId.AutomaticallyLogin,
+ };
+ frame.AddChidren(btnAutoLoginTip);
+
+ Button btnHeadImage = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(150),
+ Width = Application.GetRealWidth(84),
+ Height = Application.GetRealWidth(84),
+ Radius = (uint)Application.GetRealWidth(42),
+ BorderColor = 0x00000000,
+ BorderWidth = 0,
+ UnSelectedImagePath = "LoginIcon/2.png",
+ };
+ dialog.AddChidren(btnHeadImage);
+
+ dialog.Show();
+
+ new Thread(() =>
+ {
+ Thread.Sleep(1500);
+ Application.RunOnMainThread(() =>
+ {
+ ////鍒涘缓鐧诲綍绾跨▼
+ //var loginThread = LoadThread_Login(account, password);
+ //waitPage = new Loading();
+ //new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
+ dialog.Close();
+
+ var isPhone = registerType == 0;
+ AutoLoginAction?.Invoke(account, password, isPhone);
+ });
+ })
+ { IsBackground = true }.Start();
+ }
+
+ //#region 鐧诲綍绾跨▼閮ㄥ垎
+ ///// <summary>
+ ///// 鍔犺浇鐧诲綍绾跨▼
+ ///// </summary>
+ //Thread LoadThread_Login(string account,string password)
+ //{
+ // var loginThread = new Thread(() =>
+ // {
+ // try
+ // {
+ // //鐧诲綍
+ // var loginResult = LoadMethod_Login(account,password);
+ // if (loginResult)
+ // {
+ // //鑾峰彇浣忓畢淇℃伅
+ // var getResidencesResult = LoadMethod_GetResidences();
+ // if (getResidencesResult)
+ // {
+ // /*
+ // * Wait : 鎺ㄩ�佹敞鍐�
+ // */
+
+ // Application.RunOnMainThread(() =>
+ // {
+ // waitPage.RemoveFromParent();
+ // waitPage = null;
+
+ // //璺宠浆椤甸潰----
+ // MainPage.GoUserPage();
+ // });
+ // }
+ // }
+ // }
+ // catch (Exception ex)
+ // {
+ // MainPage.Log($"LoginPage : {ex.Message}");
+ // }
+ // })
+ // { IsBackground = true };
+ // return loginThread;
+ //}
+
+ ///// <summary>
+ ///// 璋冪敤鐧诲綍鎺ュ彛鐧诲綍
+ ///// </summary>
+ //bool LoadMethod_Login(string account, string password)
+ //{
+ // var result = false;
+ // //璋冪敤鐧诲綍鎺ュ彛
+ // var loginResult = pm.LoginByPassword(account, password);
+ // if (loginResult.Code == StateCode.SUCCESS)
+ // {
+ // var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(loginResult.Data.ToString());
+ // // UserInfo.Current = new UserInfo
+ // //{
+ // // userType = revertData.userType,
+ // // accountString = account,
+ // // password = password,
+ // // lastTime = DateTime.Now,
+ // // ID = revertData.userId,
+ // // loginTokenString = revertData.headerPrefix + revertData.accessToken,
+ // // refreshToken = revertData.refreshToken,
+ // // userName = revertData.name
+ // //};
+ // UserInfo.Current.userType = revertData.userType;
+ // UserInfo.Current.AccountString = account;
+ // //UserInfo.Current.password = password;
+ // UserInfo.Current.LastTime = DateTime.Now;
+ // UserInfo.Current.ID = revertData.userId;
+ // UserInfo.Current.LoginTokenString = revertData.headerPrefix + revertData.accessToken;
+ // UserInfo.Current.RefreshToken = revertData.refreshToken;
+ // UserInfo.Current.userName = revertData.name;
+
+ // UserInfo.Current.SaveUserInfo();
+ // MainPage.Log("鐧诲綍鎴愬姛銆�");
+ // result = true;
+ // }
+ // else
+ // {
+ // //鐧诲綍澶辫触
+ // IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code);
+ // Application.RunOnMainThread(() =>
+ // {
+ // btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+ // btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
+ // });
+ // }
+ // return result;
+ //}
+
+ ///// <summary>
+ ///// 鑾峰彇浣忓畢鍒楄〃
+ ///// </summary>
+ //bool LoadMethod_GetResidences()
+ //{
+ // var result = false;
+ // var responsePack = pm.GetHomePager();
+ // if (responsePack == StateCode.SUCCESS)
+ // {
+ // //2020-11-13 寰呯‘璁わ紝娌℃湁浣忓畢锛屼笉绠楃櫥褰曟垚鍔�
+ // if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0)
+ // {
+ // result = true;
+ // }
+ // }
+ // else
+ // {
+ // IMessageCommon.Current.ShowErrorInfoAlter(responsePack);
+ // }
+ // return result;
+ //}
+ //#endregion
}
}
\ No newline at end of file
--
Gitblit v1.8.0