From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs | 98 ++++++++++++++++++++++++++++++++++--------------
1 files changed, 69 insertions(+), 29 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs
index 220c220..8f46dd9 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/AddMiniRemoteControlDirection2Page.cs
@@ -21,6 +21,10 @@
/// wifi瀵嗙爜
/// </summary>
private string wifiPassword = string.Empty;
+ /// <summary>
+ /// 钃濈墮璁惧
+ /// </summary>
+ private List<HdlBluetoothLogic.BluetoothInfo> listDevice = new List<HdlBluetoothLogic.BluetoothInfo>();
#endregion
@@ -73,24 +77,8 @@
this.AddListMsgControls(bodyFrameLayout, strMsg, CSS.CSS_FontSize.TextFontSize,
CSS.CSS_Color.FirstLevelTitleColor, Application.GetRealHeight(20), btnSearch.Bottom + Application.GetRealHeight(4));
- //鎼滅储鏃堕棿(绉�)
- int searchTime = 5;
-
- //鎼滅储钃濈墮(鐗规晥闂,鍔�1绉�)
- this.StartSearchBluetooth(searchTime + 1);
-
- 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
@@ -98,15 +86,13 @@
#region 鈻� 鎼滅储钃濈墮___________________________
/// <summary>
- /// 瀹夊崜鎼滅储钃濈墮
+ /// 鎼滅储钃濈墮
/// </summary>
- /// <param name="i_searchTime">鎼滅储鏃堕棿(绉�)</param>
- private void StartSearchBluetooth(int i_searchTime)
+ private void StartSearchBluetooth()
{
//寮�濮嬫悳绱㈣摑鐗�
- HdlBluetoothLogic.Current.ScanBluetooth(i_searchTime, (listBluetooth) =>
+ HdlBluetoothLogic.Current.ScanBluetooth(2, (listBluetooth) =>
{
- var listDevice = new List<HdlBluetoothLogic.BluetoothInfo>();
foreach (var device in listBluetooth)
{
//鍙湁杩欎釜鏍囪瘑,鎵嶆槸绾㈠瀹�
@@ -120,18 +106,13 @@
{
//鎽ф瘉钃濈墮缂撳瓨
HdlBluetoothLogic.Current.Dispone();
- //鏄剧ず澶辫触鐣岄潰
- HdlThreadLogic.Current.RunMain(() =>
- {
- this.ShowFailView();
- });
}
else if (listDevice.Count == 1)
{
//濡傛灉鍙娴嬪埌涓�涓�,鍒欑洿鎺ヨ繛鎺�
HdlBluetoothLogic.Current.ContectBluetooth(listDevice[0], (result) =>
{
- if (result == true)
+ if (result == true && this.Parent != null)
{
//杩炴帴鎴愬姛,鍒欒烦杞埌涓嬩竴涓晫闈�
HdlThreadLogic.Current.RunMain(() =>
@@ -180,6 +161,63 @@
});
}
+ /// <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
#region 鈻� 鏄剧ず閫夋嫨钃濈墮鍒楄〃鐨勭晫闈____________
@@ -191,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);
--
Gitblit v1.8.0