From 2e7e5f9af5b32cfe1fc3c6ba40bf7eb984bbd0a4 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 11 五月 2020 17:52:06 +0800
Subject: [PATCH] ???????
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs | 179 ++++++++++++++++++++++++++++++++++-------------------------
1 files changed, 102 insertions(+), 77 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
index 0dfc34c..e5976fd 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
@@ -2,7 +2,6 @@
using System.Collections.Generic;
using Microsoft.AppCenter.Crashes;
using Shared.Common;
-using Shared.Phone.Device.Light;
using Shared.Phone.UserCenter.Device;
using ZigBee.Device;
using static ZigBee.Device.BindObj;
@@ -37,7 +36,11 @@
/// <summary>
/// 鎸夐敭閰嶇疆鐨勭洰鏍囧垪琛�
/// </summary>
- List<CommonDevice> targetList = new List<CommonDevice>();
+ List<CommonDevice> targetListDevice = new List<CommonDevice>();
+ /// <summary>
+ /// 鎸夐敭閰嶇疆鐨勫満鏅洰鏍囧垪琛�
+ /// </summary>
+ List<SceneUI> targetListScene = new List<SceneUI>();
/// <summary>
/// 鏈湴鎴块棿鍒楄〃
/// </summary>
@@ -76,20 +79,20 @@
{
RemoveFromParent();
};
- this.btnTitle.Width = Application.GetRealWidth(1080 - 161 - 200 - 58);
+ this.btnTitle.Width = Application.GetRealWidth(1080 - 161 - 300);
this.btnBack.MouseUpEventHandler += eHandlerBack;
this.btnBackFrameLayout.MouseUpEventHandler += eHandlerBack;
this.MidFrameLayout(this);
var btnAddFrameLayout = new FrameLayout
{
- X = Application.GetRealWidth(830),
+ X = Application.GetRealWidth(619),
};
this.titleFrameLayout.AddChidren(btnAddFrameLayout);
btnFloorText = new Button
{
- Width = Application.GetRealWidth(110),
+ Width = Application.GetRealWidth(300 - 69 - 58),
X = Application.GetRealWidth(15),
Text = Language.StringByID(R.MyInternationalizationString.FirstFloor),
TextColor = Shared.Common.ZigbeeColor.Current.XMBlack,
@@ -99,26 +102,36 @@
};
btnAddFrameLayout.AddChidren(btnFloorText);
+ var btnBindDownFrameLayout = new FrameLayout
+ {
+ Width = Application.GetMinReal(69 + 58),
+ X = Application.GetRealWidth(300 - 69 - 58),
+ };
+ btnAddFrameLayout.AddChidren(btnBindDownFrameLayout);
+
var btnBindDown = new Button
{
- Height = Application.GetRealHeight(69),
- Width = Application.GetRealWidth(69),
- X = Application.GetRealWidth(200 - 77),
+ Height = Application.GetMinReal(69),
+ Width = Application.GetMinReal(69),
UnSelectedImagePath = "BindPic/BindDown.png",
Gravity = Gravity.CenterVertical,
};
- btnAddFrameLayout.AddChidren(btnBindDown);
- btnBindDown.MouseDownEventHandler += (sender, e) =>
+ btnBindDownFrameLayout.AddChidren(btnBindDown);
+
+ EventHandler<MouseEventArgs> eHandlerBindDown = (sender, e) =>
{
SideslipFramelayout();
};
+ btnBindDown.MouseDownEventHandler += eHandlerBindDown;
+ btnBindDownFrameLayout.MouseDownEventHandler += eHandlerBindDown;
+
if (Common.Config.Instance.Home.FloorDics.Count == 0)
{
btnAddFrameLayout.Width = 0;
}
else
{
- btnAddFrameLayout.Width = Application.GetRealWidth(200);
+ btnAddFrameLayout.Width = Application.GetRealWidth(300);
}
MidFrameLayoutContent(btnFloorText);
}
@@ -174,8 +187,8 @@
//鑾峰彇妤煎眰
dicFloor = HdlRoomLogic.Current.GetFloorSortList();
currentKey.currentSelectFloorId = BindInfo.GetCurrentSelectFloorId();
- btnFloorText.Text = BindInfo.GetCurrentSelectFloorIdName();
-
+ btnFloorText.Text = BindInfo.GetCurrentSelectFloorIdName();
+
var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
if (Common.Config.Instance.Home.FloorDics.Count == 0)
{
@@ -215,7 +228,7 @@
var sc = currentKey.bindList.Find(obj => (obj != null) && (obj.BindScenesId == scTemp.Id));
if (sc != null)
{
- targetList.Add(scTemp);
+ targetListScene.Add(scTemp);
}
}
}
@@ -235,7 +248,7 @@
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -250,7 +263,7 @@
bool isFinish = false;
try
{
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
Application.RunOnMainThread(() =>
{
@@ -339,7 +352,7 @@
var addBindeDev = new AddBindData();
addBindeDev.DeviceAddr = currentKey.DeviceAddr;
addBindeDev.Epoint = currentKey.DeviceEpoint;
- foreach (var de in targetList)
+ foreach (var de in targetListDevice)
{
if (de.DeviceAddr != null)
{
@@ -350,36 +363,25 @@
addBindInfo.BindEpoint = de.DeviceEpoint;
addBindeDev.BindList.Add(addBindInfo);
}
- else
- {
- var addBindInfo = new AddBindListObj();
- addBindInfo.BindType = 1;
- addBindInfo.BindCluster = 6;
- var sc1 = (SceneUI)de;
- addBindInfo.BindScenesId = sc1.Id;
- addBindeDev.BindList.Add(addBindInfo);
- }
+ }
+ foreach (var de in targetListScene)
+ {
+ var addBindInfo = new AddBindListObj();
+ addBindInfo.BindType = 1;
+ addBindInfo.BindCluster = 6;
+ addBindInfo.BindScenesId = de.Id;
+ addBindeDev.BindList.Add(addBindInfo);
}
var dev = new AddedDeviceBindResponseAllData();
dev = await currentKey.AddDeviceBindAsync(addBindeDev);
- if (dev.addedDeviceBindResponseData == null)
- {
- Application.RunOnMainThread(() =>
- {
- CommonPage.Loading.Hide();
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh);
- });
- btnFinifh.Enable = true;
- btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
- return;
- }
- else
+ if (dev != null && dev.addedDeviceBindResponseData != null)
{
if (dev.addedDeviceBindResponseData.Result == 0)
{
currentKey.bindList = dev.addedDeviceBindResponseData.BindList;
- targetList.Clear();
+ targetListDevice.Clear();
+ targetListScene.Clear();
isFinish = true;
if (isFinish)
{
@@ -435,6 +437,17 @@
return;
}
}
+ else
+ {
+ Application.RunOnMainThread(() =>
+ {
+ CommonPage.Loading.Hide();
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh);
+ });
+ btnFinifh.Enable = true;
+ btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
+ return;
+ }
}
}
catch { }
@@ -484,8 +497,8 @@
var btnRoomFrameLayout = new FrameLayout
{
- Height = Application.GetRealHeight(159),
- Width = Application.GetRealWidth(255),
+ Height = Application.GetMinReal(159),
+ Width = Application.GetMinReal(255),
Y = Application.GetRealHeight(23),
X = Application.GetRealWidth(5),
BackgroundImagePath = "Item/RoomIconBackground.png",
@@ -538,7 +551,6 @@
curentOldRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png";
}
curRoom = room;
- currentKey.RoomId = room.Id;
if (curRoom.ListSceneId.Count == 0)
{
btnFinifh.Enable = false;
@@ -549,7 +561,7 @@
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -604,9 +616,9 @@
{
X = Application.GetMinRealAverage(58),
Y = Application.GetMinRealAverage(46),
- Width = Application.GetMinRealAverage(81),
- Height = Application.GetMinRealAverage(81),
- UnSelectedImagePath = "Scene/SceneIcon.png",// scene.IconPath,
+ Width = Application.GetMinReal(81),
+ Height = Application.GetMinReal(81),
+ UnSelectedImagePath = "Scene/SceneIcon.png",// scene.IconPath,
};
rowLayout.AddChidren(devicePic);
@@ -622,8 +634,8 @@
var btnChoose = new Button()
{
- Width = Application.GetRealWidth(60),
- Height = Application.GetRealHeight(60),
+ Width = Application.GetMinReal(60),
+ Height = Application.GetMinReal(60),
X = Application.GetRealWidth(861 + 81),
Y = Application.GetRealHeight(35),
SelectedImagePath = "DoorLock/SelectedIcon.png",
@@ -656,7 +668,7 @@
{
btnBindName.Text = scene.Name;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
foreach (var bindedSc in currentKey.bindList)
{
@@ -665,16 +677,15 @@
btnChoose.IsSelected = true;
btnChoose.Visible = true;
oldScene = btnChoose;
- targetList.Add(scene);
+ targetListScene.Add(scene);
}
}
}
else
{
- foreach (var bindedSc in targetList)
+ foreach (var bindedSc in targetListScene)
{
- var sc1 = (SceneUI)bindedSc;
- if (scene.Id == sc1.Id)
+ if (scene.Id == bindedSc.Id)
{
btnChoose.IsSelected = true;
btnChoose.Visible = true;
@@ -710,11 +721,11 @@
oldScene = btnChoose;
oldScene.IsSelected = true;
oldScene.Visible = true;
- currentKey.curSelectSceneID = scene.Id.ToString();
- targetList.Clear();
- targetList.Add(scene);
+ targetListDevice.Clear();
+ targetListScene.Clear();
+ targetListScene.Add(scene);
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -731,7 +742,7 @@
btnChoose.MouseUpEventHandler += hander;
curIndex++;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -762,8 +773,7 @@
var sidelipFrameLayout = new FrameLayout()
{
- Height = Application.GetRealHeight(783),
- Width = Application.GetRealWidth(449),
+ Width = Application.GetMinReal(449),
Y = Application.GetRealHeight(161),
X = Application.GetRealWidth(596),
BackgroundImagePath = "DoorLock/SideslipPic.png",
@@ -787,17 +797,19 @@
var sidelipVerticalScrolViewLayout = new VerticalScrolViewLayout()
{
Height = Application.GetRealHeight(600),
- Y = btnSelectFloor.Bottom,
+ Y = btnSelectFloor.Bottom + Application.GetRealHeight(45),
};
sidelipFrameLayout.AddChidren(sidelipVerticalScrolViewLayout);
Button oldbutton = null;
Button oldbuttonText = null;
+ int count = 0;
foreach (var floorId in dicFloor.Keys)
{
+ count++;
var rowFrameLayout = new RowLayout()
{
- Height = Application.GetRealHeight(150),
+ Height = Application.GetRealHeight(152),
LineColor = Shared.Common.ZigbeeColor.Current.XMRowLine,
X = Application.GetRealWidth(81),
};
@@ -805,9 +817,9 @@
var btnAllMethod = new Button()
{
- Width = Application.GetRealWidth(81),
- Height = Application.GetRealHeight(81),
- Y = Application.GetRealHeight(55),
+ Width = Application.GetMinReal(81),
+ Height = Application.GetMinReal(81),
+ Gravity = Gravity.CenterVertical,
UnSelectedImagePath = "Floor/Floor.png",
SelectedImagePath = "Floor/FloorSelected.png",
};
@@ -818,7 +830,7 @@
Width = Application.GetRealWidth(311),
Height = Application.GetRealHeight(58),
X = Application.GetRealWidth(92),
- Y = Application.GetRealHeight(69),
+ Gravity = Gravity.CenterVertical,
TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
TextSize = 14,
TextAlignment = TextAlignment.CenterLeft,
@@ -858,9 +870,9 @@
btnMethodText.IsSelected = true;
oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack;
oldbuttonText.IsBold = true;
- }
-
- //鑾峰彇妤煎眰瀵瑰簲鐨勬埧闂�
+ }
+
+ //鑾峰彇妤煎眰瀵瑰簲鐨勬埧闂�
var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
foreach (var room in listAllRoom)
{
@@ -883,7 +895,7 @@
int index = 0;
RefreshRoomList(curRoom, ref index);
RefreshSceneList(roomList[0]);
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -899,6 +911,19 @@
rowFrameLayout.MouseUpEventHandler += hander;
btnMethodText.MouseUpEventHandler += hander;
}
+
+ if (count == 0)
+ {
+ sidelipFrameLayout.Height = 0;
+ }
+ else if (count <= 4 && count > 0)
+ {
+ sidelipFrameLayout.Height = Application.GetRealHeight(180) + count * Application.GetRealHeight(150);
+ }
+ else
+ {
+ sidelipFrameLayout.Height = Application.GetMinReal(780);
+ }
}
/// <summary>
@@ -907,8 +932,8 @@
/// <returns></returns>
List<SceneUI> GetALlDispalyRoomSceneList()
{
- currentKeyAllRoomSceneList.Clear();
- // 鑾峰彇鎵�鏈夋埧闂�
+ currentKeyAllRoomSceneList.Clear();
+ // 鑾峰彇鎵�鏈夋埧闂�
var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
foreach (var room in listAllRoom)
{
@@ -924,7 +949,7 @@
}
foreach (var sceneId in room.ListSceneId)
- {
+ {
var scene = HdlSceneLogic.Current.GetSceneUIBySceneId(sceneId);
if (scene == null)
{
@@ -945,10 +970,10 @@
var tempSceneUIList = new List<SceneUI>();
foreach (var sceneId in curRoom.ListSceneId)
{
- var scene = HdlSceneLogic.Current.GetSceneUIBySceneId(sceneId);
- if (scene == null)
- {
- continue;
+ var scene = HdlSceneLogic.Current.GetSceneUIBySceneId(sceneId);
+ if (scene == null)
+ {
+ continue;
}
var gwSc = gwCurScenesList.Find(obj => (obj.ScenesId == sceneId));
if (gwSc != null)
--
Gitblit v1.8.0