From 9acd3887f1f8db40d59f991b1726a61aa7c7637c Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期三, 12 五月 2021 15:13:56 +0800 Subject: [PATCH] Merge branch 'CJL' into wxr4 --- HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs | 152 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 109 insertions(+), 43 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs index 68bb03f..8f46dd9 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs @@ -13,6 +13,19 @@ { #region 鈻� 鍙橀噺澹版槑___________________________ + /// <summary> + /// wifi鍚� + /// </summary> + private string wifiName = string.Empty; + /// <summary> + /// wifi瀵嗙爜 + /// </summary> + private string wifiPassword = string.Empty; + /// <summary> + /// 钃濈墮璁惧 + /// </summary> + private List<HdlBluetoothLogic.BluetoothInfo> listDevice = new List<HdlBluetoothLogic.BluetoothInfo>(); + #endregion #region 鈻� 鍒濆鍖朹____________________________ @@ -20,8 +33,13 @@ /// <summary> /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓) /// </summary> - public void ShowForm() + /// <param name="i_wifiName">wifi鍚�(鍒殑鐣岄潰浼犺繃鏉ョ殑)</param> + /// <param name="i_wifiPassword">(鍒殑鐣岄潰浼犺繃鏉ョ殑)</param> + public void ShowForm(string i_wifiName, string i_wifiPassword) { + this.wifiName = i_wifiName; + this.wifiPassword = i_wifiPassword; + //璁剧疆澶撮儴淇℃伅 base.SetTitleText(Language.StringByID(StringId.AddInfraredRemoteControl)); //杩欎釜鐣岄潰鐨勮儗鏅渶瑕佺櫧鑹� @@ -59,44 +77,22 @@ this.AddListMsgControls(bodyFrameLayout, strMsg, CSS.CSS_FontSize.TextFontSize, CSS.CSS_Color.FirstLevelTitleColor, Application.GetRealHeight(20), btnSearch.Bottom + Application.GetRealHeight(4)); - //鎼滅储鏃堕棿(绉�) - int searchTime = 5; - -#if __IOS__ -#endif -#if __Android__ - //瀹夊崜鎼滅储钃濈墮(鐗规晥闂,鍔�1绉�) - this.StartSearchBluetoothOnAndriod(searchTime + 1); -#endif - HdlThreadLogic.Current.RunThread(() => - { - //杩涘害鏉$壒鏁� - for (int i = 0; i <= searchTime; i++) - { - HdlThreadLogic.Current.RunMain(() => - { - btnProgress.SetValue(i + 1, searchTime); - }); - System.Threading.Thread.Sleep(1000); - } - }); + //寮�鍚繘搴︽潯鐗规晥 + this.StartProgressSpecialEffects(btnProgress); } #endregion - #region 鈻� 瀹夊崜鎼滅储钃濈墮_______________________ + #region 鈻� 鎼滅储钃濈墮___________________________ -#if __Android__ /// <summary> - /// 瀹夊崜鎼滅储钃濈墮 + /// 鎼滅储钃濈墮 /// </summary> - /// <param name="i_searchTime">鎼滅储鏃堕棿(绉�)</param> - private void StartSearchBluetoothOnAndriod(int i_searchTime) + private void StartSearchBluetooth() { //寮�濮嬫悳绱㈣摑鐗� - HdlAndroidBluetoothLogic.Current.ScanBluetooth(i_searchTime, (listBluetooth) => + HdlBluetoothLogic.Current.ScanBluetooth(2, (listBluetooth) => { - var listDevice = new List<HdlAndroidBluetoothLogic.BluetoothInfo>(); foreach (var device in listBluetooth) { //鍙湁杩欎釜鏍囪瘑,鎵嶆槸绾㈠瀹� @@ -109,27 +105,26 @@ if (listDevice.Count == 0) { //鎽ф瘉钃濈墮缂撳瓨 - HdlAndroidBluetoothLogic.Current.Dispone(); - //鏄剧ず澶辫触鐣岄潰 - HdlThreadLogic.Current.RunMain(() => - { - this.ShowFailView(); - }); + HdlBluetoothLogic.Current.Dispone(); } else if (listDevice.Count == 1) { //濡傛灉鍙娴嬪埌涓�涓�,鍒欑洿鎺ヨ繛鎺� - HdlAndroidBluetoothLogic.Current.ContectBluetooth(listDevice[0], (result) => + HdlBluetoothLogic.Current.ContectBluetooth(listDevice[0], (result) => { - if (result == true) + if (result == true && this.Parent != null) { //杩炴帴鎴愬姛,鍒欒烦杞埌涓嬩竴涓晫闈� HdlThreadLogic.Current.RunMain(() => { this.CloseForm(); var form = new AddMiniRemoteControlDirection3Page(); - form.AddForm(); + form.AddForm(this.wifiName, this.wifiPassword); }); + } + else + { + HdlBluetoothLogic.Current.Dispone(); } }); } @@ -144,7 +139,7 @@ this.ShowBluetoothListView(listName, (index) => { //濡傛灉鍙娴嬪埌涓�涓�,鍒欑洿鎺ヨ繛鎺� - HdlAndroidBluetoothLogic.Current.ContectBluetooth(listDevice[index], (result) => + HdlBluetoothLogic.Current.ContectBluetooth(listDevice[index], (result) => { if (result == true) { @@ -153,15 +148,75 @@ { this.CloseForm(); var form = new AddMiniRemoteControlDirection3Page(); - form.AddForm(); + form.AddForm(this.wifiName, this.wifiPassword); }); + } + else + { + HdlBluetoothLogic.Current.Dispone(); } }); }); } }); } -#endif + + /// <summary> + /// 寮�鍚繘搴︽潯鐗规晥 + /// </summary> + private void StartProgressSpecialEffects(ProgressRowBar btnProgress) + { + //鎼滅储鏃堕棿(绉�) + int searchTime = 180; + HdlThreadLogic.Current.RunThread(() => + { + //杩涘害鏉$壒鏁� + for (int i = 1; i <= searchTime; i++) + { + System.Threading.Thread.Sleep(1000); + HdlThreadLogic.Current.RunMain(() => + { + //杩涘害鏉$壒鏁� + btnProgress.SetValue(i, searchTime); + }); + + //鐣岄潰鍏抽棴 + if (this.Parent == null) + { + break; + } + //濡傛灉宸茬粡鎼滅储鍒拌摑鐗�,鍒欑洿鎺ュ埌100% + if (listDevice.Count > 0) + { + HdlThreadLogic.Current.RunMain(() => + { + btnProgress.SetValue(searchTime, searchTime); + }); + break; + } + if (i % 5 == 1) + { + //姣�5绉掓悳绱竴娆� + this.StartSearchBluetooth(); + } + //瓒呮椂 + if (i >= searchTime) + { + System.Threading.Thread.Sleep(3000); + //鏈�鍚庣殑鏃堕棿杩樻槸鎼滀笉鍒扮殑璇� + if (listDevice.Count == 0) + { + //鏄剧ず澶辫触鐣岄潰 + HdlThreadLogic.Current.RunMain(() => + { + this.ShowFailView(); + }); + } + break; + } + } + }); + } #endregion @@ -174,6 +229,8 @@ /// <param name="selectEvent">閫夋嫨浜嬩欢(鑰冭檻鍒癐os鍜屽畨鍗�,鎵�浠ヨ繖鏍峰畾鍙傛暟)</param> private void ShowBluetoothListView(List<string> listName, Action<int> selectEvent) { + if (this.Parent == null) { return; } + HdlThreadLogic.Current.RunMain(() => { var contr = new BottomItemSelectControl(listName.Count, Language.StringByID(StringId.ChooseInfraredRemoteControl), false); @@ -232,8 +289,17 @@ var btnReSearch = this.AddBottomClickButton(Language.StringByID(StringId.ReSearch)); btnReSearch.ButtonClickEvent += (sender, e) => { - //鍒濆鍖栦腑閮ㄤ俊鎭� - this.InitMiddleFrame(); + //妫�娴嬭摑鐗欓渶瑕佺殑涓滆タ + btnReSearch.CanClick = false; + HdlBluetoothLogic.Current.CheckCanScanBluetooth((result) => + { + btnReSearch.CanClick = true; + if (result == true) + { + //鍒濆鍖栦腑閮ㄤ俊鎭� + this.InitMiddleFrame(); + } + }); }; } -- Gitblit v1.8.0