From 9c607e921ca7c379799e4dd88b140265a1d5d5c5 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 22 十一月 2019 16:35:30 +0800
Subject: [PATCH] 需要合并
---
ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs | 191 ++++++++++++++++++-----------------------------
1 files changed, 74 insertions(+), 117 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
index 3ec82da..b20b6e1 100644
--- a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
+++ b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
@@ -5,6 +5,7 @@
using ZigBee.Device;
using Shared.Phone.Device.CommonForm;
using Shared.Phone.UserCenter.DoorLock;
+using System.Timers;
namespace Shared.Phone.UserView
{
@@ -78,6 +79,14 @@
/// floorBtn
/// </summary>
private Button floorBtn;
+ /// <summary>
+ /// timeDic
+ /// </summary>
+ private Dictionary<string, Timer> timerDic = new Dictionary<string, Timer> { };
+ /// <summary>
+ /// sceneScrolView
+ /// </summary>
+ private VerticalScrolViewLayout sceneScrolView ;
#endregion
#region 鈼� 鎺ュ彛____________________________
@@ -678,8 +687,6 @@
};
}
-
-
var functionSceneView = new FrameLayout()
{
Y = Application.GetRealHeight(861),
@@ -970,21 +977,6 @@
deviceVerticalScrolViewLayout.AddChidren(itemView);
}
- //鍒犻櫎璁惧
- EventHandler<MouseEventArgs> delEvent = (sender, e) =>
- {
- var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
- alert.Show();
- alert.ResultEventHandler += (send1, e1) =>
- {
- if (e1)
- {
- Room.CurrentRoom.DeleteDevice(device.FileName);
- //RefreshBodyView();
- deviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
- }
- };
- };
//鏀惰棌
EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
{
@@ -1707,7 +1699,7 @@
}
else
{
- var sceneScrolView = new VerticalScrolViewLayout { };
+ sceneScrolView = new VerticalScrolViewLayout { };
functionSceneBodyView.AddChidren(sceneScrolView);
for (int i = 0; i < sceneList.Count; i++)
{
@@ -1731,108 +1723,73 @@
var sceneView = new SceneMainView(xx, yy);
itemView.AddChidren(sceneView);
- sceneView.Init();
- sceneView.SetSceneNameText(scene.Name);
- sceneView.SetIcon($"SceneIcon/{i}.png");
- sceneView.SetCollect(Common.Room.CurrentRoom.GetLoveRoom().SceneUIFilePathList.Contains(scene.FileName));
-
- if (scene.SceneDelayTime == 0)
- {
- sceneView.SetTimeImage();
- }
- else
- {
- sceneView.SetTimeText(CommonFormResouce.GetTimeString(scene.SceneDelayTime));
- }
-
- sceneView.TimeButton.MouseUpEventHandler += (sender, e) =>
- {
- var timeSelect = new SelectTime();
- CommonPage.Instance.AddChidren(timeSelect);
- timeSelect.TempTime = scene.DelayTime;
- timeSelect.Init();
- timeSelect.TimeAction = (t) =>
- {
- scene.SceneDelayTime = t;
- if (t > 0)
- {
- sceneView.SetTimeText(CommonFormResouce.GetTimeString(scene.SceneDelayTime));
- }
- else
- {
- sceneView.SetTimeImage();
- }
- };
-
- };
-
- //璋冪敤鍦烘櫙
- EventHandler<MouseEventArgs> sceneUpHandler = async (sender, e) =>
- {
- //1鎴愬姛 0澶辫触
- //鍚庨潰琛ヤ笂鐩稿叧鎻愮ず
- // Error鍙傛暟鍚箟
- //<para>1锛氱綉鍏虫棤娉曡В鏋愬懡浠ゆ暟鎹��</para>
- //<para>2锛氬崗璋冨櫒姝e湪鍗囩骇鎴栧浠�/鎭㈠鏁版嵁
- //<para>3锛氭搷浣滆澶�/缁�/鍦烘櫙涓嶅瓨鍦�</para>
- //<para>4锛氬叾浠栭敊璇�</para>
- //<para>5锛氭暟鎹紶杈撻敊璇紙鍦ㄦ煇娆″鎴风鍚戠綉鍏冲彂閫佹暟鎹殑杩囩▼涓紝缃戝叧鍦ㄥ悎鐞嗘椂闂磋寖鍥村唴鎺ユ敹瀹㈡埛绔暟鎹笉瀹屾暣瀵艰嚧璇ラ敊璇彂鐢熴�傚瀹㈡埛绔悜缃戝叧涓�娆″彂閫�100涓瓧鑺傜殑鏁版嵁锛屼絾缃戝叧绛夊緟鎺ユ敹浜嗕竴绉掑彧鎺ユ敹浜�80涓瓧鑺傘�傚彂鐢熻閿欒锛岀綉鍏冲皢涓诲姩鍏抽棴瀹㈡埛绔繛鎺ワ級</para>
- var sceneOpenAllData = await ZigBee.Device.Scene.ControlSceneAsync(scene.Id, scene.SceneDelayTime);
- if (sceneOpenAllData == null || sceneOpenAllData.sceneOpenData == null)
- {
- return;
- }
- if (sceneOpenAllData.sceneOpenData.Result == 0)
- {
- if (sceneOpenAllData.errorResponData == null)
- {
- return;
- }
- CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ControlSceneFail);
- }
- };
- //鏀惰棌
- EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
- {
- (sender as Button).IsSelected = !(sender as Button).IsSelected;
- if ((sender as Button).IsSelected)
- {
- //scene.IsCollected = true;
- Room.CurrentRoom.GetLoveRoom().AddScene(scene);
- }
- else
- {
- //scene.IsCollected = false;
- Room.CurrentRoom.GetLoveRoom().RemoveScene(scene);
- }
- scene.Save();
-
- //if ((sender as Button).IsSelected)
- //{
- // scene.Collect(false);
- // (sender as Button).IsSelected = false;
- //}
- //else
- //{
- // scene.Collect(true);
- // (sender as Button).IsSelected = true;
- //}
- //scene.Save();
- //if (Room.CurrentRoom.IsLove)
- //{
- // RefreshBodyView();
- //}
-
- };
-
- sceneView.CollectButton.MouseUpEventHandler += collectionEvent;
- sceneView.MouseUpEventHandler += sceneUpHandler;
- sceneView.SceneIcon.MouseUpEventHandler += sceneUpHandler;
- sceneView.SceneNameButton.MouseUpEventHandler += sceneUpHandler;
-
+ sceneView.Init(scene);
}
+ GetDelayScene(sceneScrolView);
}
+ }
+ /// <summary>
+ /// GetDelayScene
+ /// </summary>
+ /// <param name="scrolViewLayout"></param>
+ private void GetDelayScene(VerticalScrolViewLayout scrolViewLayout)
+ {
+ new System.Threading.Thread(async () =>
+ {
+ var catDelaySceneResponseAllData = await Scene.CatDelaySceneAsync();
+ if (catDelaySceneResponseAllData == null)
+ {
+ return;
+ }
+ var catDelaySceneResponseData = catDelaySceneResponseAllData.catDelaySceneResponseData;
+ if (catDelaySceneResponseData == null || catDelaySceneResponseData.DelayScenesList.Count == 0)
+ {
+ return;
+ }
+ var delayList = catDelaySceneResponseData.DelayScenesList;
+
+ Application.RunOnMainThread(() =>
+ {
+ for (int i = 0; scrolViewLayout != null && i < scrolViewLayout.ChildrenCount; i++)
+ {
+ var iView = scrolViewLayout.GetChildren(i) as FrameLayout;
+ for (int j = 0; iView != null && j < iView.ChildrenCount; j++)
+ {
+ var sceneView = iView.GetChildren(j) as SceneMainView;
+ foreach (var delayScenesListResponseInfo in delayList)
+ {
+ if (delayScenesListResponseInfo.ScenesId == sceneView.scene.Id)
+ {
+ var times = delayScenesListResponseInfo.RemainTime;
+ sceneView.scene.RemainTime = times;
+ new System.Threading.Thread(() =>
+ {
+ while (times > 0)
+ {
+ System.Threading.Thread.Sleep(1000);
+ Application.RunOnMainThread(() =>
+ {
+ sceneView.SetTimeText(CommonFormResouce.GetTimeString(times));
+ });
+ times -= 1;
+ }
+ Application.RunOnMainThread(() =>
+ {
+ sceneView.SetTimeImage();
+ });
+ })
+ { IsBackground = true }.Start();
+
+ break;
+ }
+ }
+
+ }
+ }
+ });
+ })
+ { IsBackground = true }.Start();
}
#endregion
--
Gitblit v1.8.0