gxc
2020-01-02 00ab3ddb140ba8bb88b5cf572b004a85e1da85e9
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs
@@ -15,10 +15,10 @@
        /// </summary>
        /// <param name="common">Common.</param>
        public void Changed(CommonDevice common)
        {
        {
            Shared.Application.RunOnMainThread(() =>
            {
             });
            });
        }
        /// 构造函数
@@ -81,7 +81,6 @@
            var btnAddFrameLayout = new FrameLayout
            {
                X = Application.GetRealWidth(830),
                Width = Application.GetRealWidth(200),
            };
            this.titleFrameLayout.AddChidren(btnAddFrameLayout);
@@ -91,7 +90,8 @@
                X = Application.GetRealWidth(15),
                Text = Language.StringByID(R.MyInternationalizationString.FirstFloor),
                TextColor = Shared.Common.ZigbeeColor.Current.XMBlack,
                TextSize = 15,
                TextSize = 14,
                IsBold = true,
                TextAlignment = TextAlignment.CenterRight,
            };
            btnAddFrameLayout.AddChidren(btnFloorText);
@@ -105,10 +105,24 @@
                Gravity = Gravity.CenterVertical,
            };
            btnAddFrameLayout.AddChidren(btnBindDown);
            if (Common.Config.Instance.Home.FloorDics.Count == 0)
            {
                btnBindDown.Visible = false;
            }
            btnBindDown.MouseDownEventHandler += (sender, e) =>
            {
                SideslipFramelayout();
            };
            if (Common.Config.Instance.Home.FloorDics.Count == 0)
            {
                btnAddFrameLayout.Width = 0;
            }
            else
            {
                btnAddFrameLayout.Width = Application.GetRealWidth(200);
            }
            MidFrameLayoutContent(btnFloorText);
        }
@@ -156,6 +170,7 @@
                BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack,
                TextColor = Shared.Common.ZigbeeColor.Current.XMWhite,
                TextSize = 16,
                IsBold = true,
            };
            bottomFrameLayout.AddChidren(btnChooseKeyMode);
            #endregion
@@ -165,19 +180,34 @@
            dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
            currentKey.currentSelectFloorId = BindInfo.GetCurrentSelectFloorId();
            btnFloorText.Text = BindInfo.GetCurrentSelectFloorIdName();
            // 获取楼层对应对房间
            foreach (var room in Shared.Common.Room.Lists)
            if (Common.Config.Instance.Home.FloorDics.Count == 0)
            {
                if (room.FloorId == currentKey.currentSelectFloorId)
                // 获取没有楼层房间
                foreach (var room in Shared.Common.Room.Lists)
                {
                    roomList.Add(room);
                    if (string.IsNullOrEmpty(room.FloorId))
                    {
                        roomList.Add(room);
                    }
                }
            }
            else
            {
                // 获取楼层对应对房间
                foreach (var room in Shared.Common.Room.Lists)
                {
                    if (room.FloorId == currentKey.currentSelectFloorId)
                    {
                        roomList.Add(room);
                    }
                }
            }
            //首次拿到所有房间中按键的目标并存储
            GetALlDispalyRoomDeviceList();
            if (currentKeyAllRoomDeviceList.Count != 0)
            {
                if (currentKey.bindList != null && currentKey.bindList.Count != 0)
                if (currentKey.bindList.Count != 0)
                {
                    foreach (var devA in currentKeyAllRoomDeviceList)
                    {
@@ -220,9 +250,23 @@
                btnChooseKeyMode.Enable = true;
                btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
            }
            if (targetList.Count == 0)
            {
                btnChooseKeyMode.Enable = false;
                btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
            }
            else
            {
                btnChooseKeyMode.Enable = true;
                btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
            }
            btnChooseKeyMode.MouseUpEventHandler += (sender, e) =>
            {
                if (targetList.Count == 0)
                {
                    new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindDeviceTargetIsEmpty), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnChooseKeyMode);
                    return;
                }
                this.RemoveFromParent();
                var chooseKeyModePage = new Shared.Phone.UserCenter.DeviceBind.ChooseKeyModePage(currentKey, curDeviceBindType, targetList);
@@ -275,12 +319,11 @@
                var btnRoomFrameLayout = new FrameLayout
                {
                    Height = Application.GetRealHeight(78),
                    Width = Application.GetRealWidth(187),
                    Y = Application.GetRealHeight(58),
                    X = Application.GetRealWidth(58),
                    Radius = (uint)Application.GetMinRealAverage(78 / 2),
                    BorderColor = Shared.Common.ZigbeeColor.Current.XMOrange,
                    Height = Application.GetRealHeight(159),
                    Width = Application.GetRealWidth(255),
                    Y = Application.GetRealHeight(23),
                    X = Application.GetRealWidth(5),
                    BackgroundImagePath = "Item/RoomIconBackground.png",
                    BorderWidth = 1,
                };
                btnHorizontalScrolViewLayout.AddChidren(btnRoomFrameLayout);
@@ -301,9 +344,7 @@
                btnRoom.IsSelected = false;
                if (index == 0)
                {
                    btnRoom.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMOrange;
                    btnRoomFrameLayout.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMOrange;
                    btnRoomFrameLayout.BorderWidth = 0;
                    btnRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png";
                    btnRoom.TextColor = Shared.Common.ZigbeeColor.Current.XMWhite;
                    curentOldRoom = btnRoom;
                    curentOldRoomFrameLayout = btnRoomFrameLayout;
@@ -315,24 +356,9 @@
                        if (curentOldRoom != null)
                        {
                            curentOldRoom.TextColor = Shared.Common.ZigbeeColor.Current.XMGray3;
                            curentOldRoom.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMMidFrameLayout;
                        }
                        curentOldRoom = btnRoom;
                        curentOldRoom.TextColor = Shared.Common.ZigbeeColor.Current.XMWhite;
                        curentOldRoom.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMOrange;
                        curRoom = room;
                        currentKey.RoomId = room.Id;
                        RefreshDeviceList(curRoom);
                        if (curTypeDeviceList.Count == 0)
                        {
                            btnChooseKeyMode.Enable = false;
                            btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
                        }
                        else
                        {
                            btnChooseKeyMode.Enable = true;
                            btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                        }
                    }
                    if (btnRoomFrameLayout.BorderWidth == 1)
@@ -340,35 +366,39 @@
                        if (curentOldRoomFrameLayout != null)
                        {
                            curentOldRoomFrameLayout.BorderWidth = 1;
                            curentOldRoomFrameLayout.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMMidFrameLayout;
                            curentOldRoomFrameLayout.BorderColor = Shared.Common.ZigbeeColor.Current.XMOrange;
                            curentOldRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackground.png";
                        }
                        curentOldRoomFrameLayout = btnRoomFrameLayout;
                        curentOldRoomFrameLayout.BorderWidth = 0;
                        curentOldRoomFrameLayout.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMOrange;
                        curRoom = room;
                        currentKey.RoomId = room.Id;
                        RefreshDeviceList(curRoom);
                        if (curTypeDeviceList.Count == 0)
                        {
                            btnChooseKeyMode.Enable = false;
                            btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
                        }
                        else
                        {
                            btnChooseKeyMode.Enable = true;
                            btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                        }
                        curentOldRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png";
                    }
                    curRoom = room;
                    currentKey.RoomId = room.Id;
                    RefreshDeviceList(curRoom);
                    if (curTypeDeviceList.Count == 0)
                    {
                        btnChooseKeyMode.Enable = false;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
                    }
                    else
                    {
                        btnChooseKeyMode.Enable = true;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                    }
                    if (targetList.Count == 0)
                    {
                        btnChooseKeyMode.Enable = false;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
                    }
                    else
                    {
                        btnChooseKeyMode.Enable = true;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                    }
                };
                btnRoom.MouseUpEventHandler += eHandlerRoom;
                btnRoomFrameLayout.MouseUpEventHandler += eHandlerRoom;
                var btnEmpty = new Button
                {
                    Width = Application.GetRealWidth(58),
                    X = btnRoom.Right,
                };
                btnHorizontalScrolViewLayout.AddChidren(btnEmpty);
                index++;
            }
            BindInfo.FinishDisplay(roomTempList, btnChooseKeyMode);
@@ -384,10 +414,6 @@
                case "AddSwitch":
                    foreach (var r in Shared.Common.Room.Lists)
                    {
                        if (r.IsLove == true)
                        {
                            var aa = 0; ;
                        }
                        if (r.DeviceUIList.Count == 0)
                        {
                            continue;
@@ -515,6 +541,7 @@
            int curIndex = 0;
            foreach (var device in curTypeDeviceList)
            {
                curIndex++;
                if (device.CommonDevice != null && device.CommonDevice.IsOnline == 0)
                {
                    continue;
@@ -546,6 +573,7 @@
                    TextColor = Shared.Common.ZigbeeColor.Current.TextBlack,
                    TextAlignment = TextAlignment.CenterLeft,
                    Tag = device.CommonDevice?.DeviceEpointName,
                    TextSize = 15,
                };
                rowLayout.AddChidren(btnBindName);
@@ -556,7 +584,6 @@
                    X = Application.GetRealWidth(861 + 81),
                    Y = Application.GetRealHeight(35),
                    SelectedImagePath = "DoorLock/SelectedIcon.png",
                    //Text = device.CommonDevice?.DeviceEpointName,
                    TextColor = Shared.Common.ZigbeeColor.Current.XMWhite,
                    Visible = false,
                    Tag = device.CommonDevice?.DeviceEpointName,
@@ -573,7 +600,7 @@
                };
                rowLayout.AddChidren(line2);
                if (curIndex == curRoom.SceneUIList.Count - 1)
                if (curIndex == curTypeDeviceList.Count)
                {
                    line2.Visible = false;
                }
@@ -591,9 +618,26 @@
                    }
                    else
                    {
                        targetList.Add(device.CommonDevice);
                        btnChoose.IsSelected = true;
                        btnChoose.Visible = true;
                        if (targetList.Count > 7)
                        {
                            new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFull), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance);
                        }
                        else
                        {
                            targetList.Add(device.CommonDevice);
                            btnChoose.IsSelected = true;
                            btnChoose.Visible = true;
                        }
                    }
                    if (targetList.Count == 0)
                    {
                        btnChooseKeyMode.Enable = false;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
                    }
                    else
                    {
                        btnChooseKeyMode.Enable = true;
                        btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                    }
                };
                rowLayout.MouseUpEventHandler += hander;
@@ -618,10 +662,17 @@
                        btnChoose.Visible = true;
                    }
                }
                curIndex++;
            }
            //IsInitEntry = false;
            if (targetList.Count == 0)
            {
                btnChooseKeyMode.Enable = false;
                btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
            }
            else
            {
                btnChooseKeyMode.Enable = true;
                btnChooseKeyMode.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
            }
        }
        // 侧边导航栏
@@ -655,10 +706,11 @@
                Height = Application.GetRealHeight(58),
                X = Application.GetRealWidth(81),
                Y = Application.GetRealHeight(81),
                TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
                TextColor = Shared.Common.ZigbeeColor.Current.XMBlack,
                TextSize = 14,
                TextAlignment = TextAlignment.CenterLeft,
                TextID = R.MyInternationalizationString.SelectFloor,
                IsBold = true,
            };
            sidelipFrameLayout.AddChidren(btnSelectFloor);
@@ -707,6 +759,7 @@
                if (currentKey.currentSelectFloorId == floorId)
                {
                    btnAllMethod.IsSelected = true;
                    btnAllMethod.IsBold = true;
                    btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                }
@@ -735,6 +788,7 @@
                        oldbuttonText = btnMethodText;
                        btnMethodText.IsSelected = true;
                        oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack;
                        oldbuttonText.IsBold = true;
                    }
                    //获取楼层对应的房间