wjc
2023-03-07 8fdb0e0c9d04b5069e9c83e9a5f38ba085485663
2023年03月07日18:21:18

保存代码
18个文件已添加
9个文件已修改
231 ■■■■ 已修改文件
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/Cell.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/HistoryList.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/OneOpenLock.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/RTV.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/UnLocked.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/UnLocking.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorLockClose.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorLockOpen.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorlockClose.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/history.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/HDL-ON_Android.csproj 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/HDL-ON_iOS.csproj 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/Cell.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/HistoryList.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/OneOpenLock.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/RTV.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/UnLocked.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/UnLocking.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/VideoDoorLockClose.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/VideoDoorLockOpen.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/1-HomePage/HomePage.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/2-Classification/RoomPage.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs 169 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/Cell.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/HistoryList.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/OneOpenLock.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/RTV.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/UnLocked.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/UnLocking.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorLockClose.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorLockOpen.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/VideoDoorlockClose.png
HDL-ON_Android/Assets/Phone/FunctionIcon/DoorLock/history.png
HDL-ON_Android/HDL-ON_Android.csproj
@@ -420,6 +420,14 @@
    <AndroidAsset Include="Assets\h5\static\img\coal-save-ic.6c5fd125.png" />
    <AndroidAsset Include="Assets\h5\static\font\SourceHanSansCN-Normal.otf" />
    <AndroidAsset Include="Assets\Phone\MusicIcon\currentPlayList.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\OneOpenLock.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\RTV.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\UnLocked.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\UnLocking.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\VideoDoorlockClose.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\VideoDoorLockOpen.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\History.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\cell.png" />
  </ItemGroup>
  <ItemGroup>
    <AndroidResource Include="Resources\values\colors.xml" />
@@ -1617,7 +1625,7 @@
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\NormallyOpenIcon3.png" />
  </ItemGroup>
  <ItemGroup>
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\History.png" />
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\HistoryList.png" />
  </ItemGroup>
  <ItemGroup>
    <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\DoorLock.png" />
HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -1563,6 +1563,14 @@
      <BundleResource Include="Resources\h5\static\img\coal-save-ic.6c5fd125.png" />
      <BundleResource Include="Resources\h5\static\font\SourceHanSansCN-Normal.otf" />
      <BundleResource Include="Resources\Phone\MusicIcon\currentPlayList.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\HistoryList.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\OneOpenLock.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\RTV.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\UnLocked.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\UnLocking.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\VideoDoorLockClose.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\VideoDoorLockOpen.png" />
      <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\Cell.png" />
    </ItemGroup>
    <ItemGroup>
      <ITunesArtwork Include="iTunesArtwork" />
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/Cell.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/HistoryList.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/OneOpenLock.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/RTV.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/UnLocked.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/UnLocking.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/VideoDoorLockClose.png
HDL-ON_iOS/Resources/Phone/FunctionIcon/DoorLock/VideoDoorLockOpen.png
HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
@@ -12,7 +12,7 @@
        /// <summary>
        /// 功能控制界面跳转事件
        /// </summary>
        public EventHandler<MouseEventArgs> LoadEvent_SkipFunctionControlPage(Function function, Button btnCollectionIcon, Button btnName, Button btnFromFloor
        public EventHandler<MouseEventArgs> LoadEvent_SkipFunctionControlPage(Function function, Button btnCollectionIcon, Button btnName, Button btnFromFloor, Comerom comerom
            )
        {
            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
@@ -309,7 +309,7 @@
                        break;
                    case SPK.VideoDoorLock: {
                            //萤石视频门锁
                            var form = new VideoDoorLockPage(function, btnName, btnFromFloor, Comerom.room);
                            var form = new VideoDoorLockPage(function, btnName, btnFromFloor,comerom);
                            MainPage.BasePageView.AddChidren(form);
                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            form.Show();
HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -725,6 +725,7 @@
            {
                int index = 0;
                var list = FunctionList.List.GetDeviceFunctionList();
                foreach (var function in list)
                {
                    //音乐模块有主从关系,需要特殊处理
@@ -1202,7 +1203,11 @@
                    btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png";
                    btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png";
                }
                else if (function.spk == SPK.VideoDoorLock)
                {
                    btnIcon.UnSelectedImagePath =UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockIcon(Comerom.collect);
                    //btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png";
                }
                else
                {
                    Button btnSwitch;
@@ -1238,7 +1243,7 @@
                };
                var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone);
                var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone,Comerom.collect);
                view.MouseUpEventHandler = skipControlPageEvent;
                btnName.MouseUpEventHandler = skipControlPageEvent;
                btnIcon.MouseUpEventHandler = skipControlPageEvent;
@@ -1452,11 +1457,14 @@
                LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene);
                btnSettingIcon.MouseUpEventHandler = (sender, e) => {
                    Action backAction = () => {
                btnSettingIcon.MouseUpEventHandler = (sender, e) =>
                {
                    Action backAction = () =>
                    {
                        //LoadSceneFunctionControlZone();
                    };
                    Action refreshAction = () => {
                    Action refreshAction = () =>
                    {
                        btnName.Text = scene.name;
                        btnZone.Text = scene.GetRoomListName();
                        //view.BackgroundImagePath = (scene as Scene).ImagePath;
@@ -1465,7 +1473,7 @@
                    };
                    var aep = new SceneEditPage(scene, backAction);
                    MainPage.BasePageView.AddChidren(aep);
                    aep.LoadPage( refreshAction);
                    aep.LoadPage(refreshAction);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                };
                //场景正在倒计时执行中
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -188,7 +188,7 @@
            }
            else if (function.spk == SPK.VideoDoorLock)
            {
                btnIcon.UnSelectedImagePath = UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockIcon;
                btnIcon.UnSelectedImagePath = UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockIcon(Comerom.function);
            }
            else if (function.spk == SPK.HvacCac)
            {
HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs
@@ -405,7 +405,7 @@
        /// </summary>
        void LoadEvent_DivSkipEvent()
        {
            var eventHandler = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollectionIcon, btnName, btnFromFloor);
            var eventHandler = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollectionIcon, btnName, btnFromFloor,Comerom.function);
            this.MouseUpEventHandler = eventHandler;
            btnName.MouseUpEventHandler = eventHandler;
            btnFromFloor.MouseUpEventHandler = eventHandler;
HDL_ON/UI/UI2/2-Classification/RoomPage.cs
@@ -78,7 +78,6 @@
            };
            bodyView.AddChidren(functionListView);
            foreach (var function in room.GetRoomFunctions(false))
            {
                if (MainPage.RoomNotSupportFunctionList.Contains( function.spk))
HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs
@@ -29,12 +29,17 @@
        /// <summary>
        /// 萤石视频门锁的图标
        /// </summary>
        public string GetVideoDoorLockIcon{
            get {
                return "FunctionIcon/DoorLock/DoorLock.png";
        public string GetVideoDoorLockIcon(Comerom comerom)
        {
            if (comerom == Comerom.collect)
            {
                return "FunctionIcon/DoorLock/VideoDoorLockOpen.png";
            }
            else
            {
                return "FunctionIcon/DoorLock/VideoDoorlockClose.png";
            }
        }
        /// <summary>
HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs
@@ -32,13 +32,25 @@
        /// </summary>
        private TopView topView;
        /// <summary>
        /// 当前设备名称
        /// </summary>
        private Button btnCurrDeviceName;
        /// <summary>
        /// 区域
        /// </summary>
        private Button btnCurrDeviceRoom;
        /// <summary>
        /// 电量
        /// </summary>
        private Button btnCell;
        /// <summary>
        ///收藏图标
        /// </summary>
        private Button btnCollectIcon;
        /// <summary>
        /// 门锁状态
        /// </summary>
        private CustomFrameLayout doorLockFL;
        private Button btnDoorLockIcon;
        /// <summary>
        /// 实时视频
        /// </summary>
@@ -55,6 +67,7 @@
        /// 历史记录
        /// </summary>
        private CustomFrameLayout recordFL;
        /// <summary>
        /// 表示来自那个界面
        /// </summary>
@@ -82,7 +95,7 @@
            //初始化UI
            this.InitUI();
            //初始化事件
            this.Events();
            this.EventListener ();
        }
@@ -95,17 +108,71 @@
            this.BackgroundColor = MusicColor.ViewColor;
            this.topView = new TopView();
            this.topView.setBtn.Visible = true;
            this.topView.topNameBtn.Text = this.device.name;
            this.topView.topNameBtn.TextID =StringId.shipinmensuo;
            this.AddChidren(topView.TopFLayoutView());
            var middLayout = new FrameLayout
            var middleFl=new FrameLayout
            {
                Y = topView.fLayout.Bottom,
                Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
            };
            this.AddChidren(middLayout);
            this.AddChidren(middleFl);
            var whiteFl = new FrameLayout
            {
                Y = Application.GetRealHeight(24),
                X = Application.GetRealWidth(24),
                Height = Application.GetRealHeight(526),
                Width = Application.GetRealWidth(327),
                BackgroundImagePath = "MusicIcon/playBj.png",
                Name = "fl",
            };
            middleFl.AddChidren(whiteFl);
            btnCurrDeviceName= new Button
            {
                TextSize = TextSize.Text24,
                TextColor = MusicColor.Text18Color,
                Width = Application.GetRealWidth(160),
                Height = Application.GetRealHeight(33),
                Y = Application.GetRealHeight(16),
                X = Application.GetRealWidth(16),
                Text = this.device.name,
                TextAlignment=TextAlignment.CenterLeft,
            };
            whiteFl.AddChidren(btnCurrDeviceName);
            btnCurrDeviceRoom = new Button
            {
                TextSize = TextSize.Text12,
                TextColor = MusicColor.MusicNoTxetColor,
                Width = Application.GetRealWidth(160),
                Height = Application.GetRealHeight(33),
                Y = btnCurrDeviceName.Bottom+ Application.GetRealHeight(4),
                X = Application.GetRealWidth(16),
                Text = this.device.GetRoomListName(),
                TextAlignment = TextAlignment.CenterLeft,
            };
            whiteFl.AddChidren(btnCurrDeviceRoom);
            btnCurrDeviceRoom.Width=btnCurrDeviceName.GetTextWidth();
            btnCell = new Button
            {
                TextSize = TextSize.Text10,
                TextColor = MusicColor.TextColor,
                Y = Application.GetRealHeight(43),
                X = btnCurrDeviceRoom.Right+Application.GetRealWidth(17),
                //Text ="60"+"%",
                //TextAlignment = TextAlignment.Center,
                Width = Application.GetRealWidth(36),
                Height = Application.GetRealWidth(36),
                UnSelectedImagePath ="FunctionIcon/DoorLock/Cell.png",
            };
            whiteFl.AddChidren(btnCell);
            btnCollectIcon = new Button
            {
                X = Application.GetRealWidth(273),
                X = Application.GetRealWidth(264),
                Y = Application.GetRealHeight(14),
                Width = Application.GetRealWidth(40),
                Height = Application.GetRealWidth(40),
@@ -114,54 +181,63 @@
                IsSelected= this.device.collect,
                Name = "collect"
            };
            middLayout.AddChidren(btnCollectIcon);
            whiteFl.AddChidren(btnCollectIcon);
            //门锁状态
            doorLockFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            middLayout.AddChidren(doorLockFL);
            doorLockFL.X = Application.GetRealWidth(40);
            doorLockFL.Y = btnCollectIcon.Bottom + Application.GetRealHeight(20);
            doorLockFL.AddImageView();
            doorLockFL.AddTextButtonView();
            doorLockFL.GetTextButton().TextID = StringId.shishishipin;
            btnDoorLockIcon = new Button
            {
                X = Application.GetRealWidth(65),
                Y = Application.GetRealHeight(108),
                Width = Application.GetRealWidth(198),
                Height = Application.GetRealWidth(200),
                UnSelectedImagePath = "FunctionIcon/DoorLock/UnLocked.png",
                SelectedImagePath = "FunctionIcon/DoorLock/UnLocking.png",
            };
            whiteFl.AddChidren(btnDoorLockIcon);
            //实时视频
            rtvFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            middLayout.AddChidren(rtvFL);
            rtvFL.X = Application.GetRealWidth(20);
            rtvFL.Y = Application.GetRealHeight(300);
            whiteFl.AddChidren(rtvFL);
            rtvFL.Y = btnDoorLockIcon.Bottom+ Application.GetRealHeight(45);
            rtvFL.X = Application.GetRealWidth(68);
            rtvFL.AddImageView();
            rtvFL.AddTextButtonView();
            rtvFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/RTV.png";
            rtvFL.GetTextButton().TextID = StringId.shishishipin;
            //历史记录
            recordFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            whiteFl.AddChidren(recordFL);
            recordFL.Y = btnDoorLockIcon.Bottom + Application.GetRealHeight(45);
            recordFL.X = rtvFL.Right + Application.GetRealHeight(CustomFrameLayout.interval);
            recordFL.AddImageView();
            recordFL.AddTextButtonView();
            recordFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/HistoryList.png";
            recordFL.GetTextButton().TextID = StringId.lishijilu;
            //一键开锁
            openFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            middLayout.AddChidren(openFL);
            openFL.X = rtvFL.Right + Application.GetRealWidth(20);
            openFL.Y = Application.GetRealHeight(300);
            whiteFl.AddChidren(openFL);
            openFL.X = rtvFL.X;
            openFL.Y = rtvFL.Bottom+Application.GetRealHeight(14);
            openFL.AddImageView();
            openFL.AddTextButtonView();
            openFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/OneOpenLock.png";
            openFL.GetTextButton().TextID = StringId.yijiankaisuo;
            //临时密码
            pswFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            middLayout.AddChidren(pswFL);
            pswFL.X = openFL.Right + Application.GetRealWidth(20);
            pswFL.Y = Application.GetRealHeight(300);
            whiteFl.AddChidren(pswFL);
            pswFL.X = recordFL.X;
            pswFL.Y = rtvFL.Bottom + Application.GetRealHeight(14);
            pswFL.AddImageView();
            pswFL.AddTextButtonView();
            pswFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/OneOpenLock.png";
            pswFL.GetTextButton().TextID = StringId.linshimima1;
            //历史记录
            recordFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
            middLayout.AddChidren(recordFL);
            recordFL.X = Application.GetRealWidth(20);
            recordFL.Y = Application.GetRealHeight(300 + 100);
            recordFL.AddImageView();
            recordFL.AddTextButtonView();
            recordFL.GetTextButton().TextID = StringId.lishijilu;
            #endregion
        }
        /// <summary>
        /// 注册事件
        /// </summary>
        private void Events()
        private void EventListener()
        {
            //返回
            this.topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
@@ -184,6 +260,8 @@
                    this.btnDeviceName.Text = this.device.name;
                    this.btnRoomName.Text = this.device.GetRoomListName();
                    this.topView.topNameBtn.Text = this.device.name;
                    this.btnCurrDeviceName.Text = this.device.name;
                    this.btnCurrDeviceRoom.Text= this.device.GetRoomListName();
                    ////从新计算宽度
                    //this.btnDeviceName.Text = btnDeviceName.Text;
@@ -223,11 +301,11 @@
    /// </summary>
    class CustomFrameLayout : FrameLayout
    {
        public const int widthFrameLayout = 100;
        public const int heightFrameLayout = 80;
        public const int yFrameLayout = 300;
        public const int xFrameLayout = 20;
        public const int interval = 20;//行中的列间隔值
        public const int widthFrameLayout = 74;
        public const int heightFrameLayout = 70;
        public const int yFrameLayout = 353;
        public const int xFrameLayout = 68;
        public const int interval = 47;//行中的列间隔值
        public CustomFrameLayout(int width, int height, int x = 0, int y = 0)
        {
@@ -239,26 +317,23 @@
        }
        Button btnStateImage = new Button
        {
            Width = Application.GetRealWidth(40),
            Height = Application.GetRealWidth(40),
            UnSelectedImagePath = "MusicIcon/collect.png",
            SelectedImagePath = "MusicIcon/collectSelected.png",
            Gravity = Gravity.CenterHorizontal,
            Width = Application.GetRealWidth(32),
            Height = Application.GetRealWidth(32),
            Gravity = Gravity.TopCenter,
            Name = "btnStateImage",
        };
        Button btnStateText = new Button
        {
            Y = Application.GetRealHeight(20),
            Y = Application.GetRealHeight(4),
            Width = Application.GetRealWidth(100),
            Height = Application.GetRealWidth(20),
            TextID = StringId.dangqianmenweiguan,
            TextSize = TextSize.Text14,
            TextColor = MusicColor.TextColor,
            TextSize = TextSize.Text12,
            TextColor = MusicColor.TextCancelColor,
            TextAlignment=TextAlignment.Center,
            Gravity = Gravity.CenterHorizontal,
            Name = "btnStateText"
        };
        public void AddImageView()
        {