From c1cb2d8c6034a2ee7aa8a5710bba15b14f76cebc Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 18 八月 2023 18:54:31 +0800
Subject: [PATCH] 2023年08月18日18:54:22
---
HDL-ON_Android/Assets/Phone/AksIcon/like.png | 0
HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs | 10
HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjia.png | 0
HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjian.png | 0
HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs | 4
HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/electricaltvhisense.png | 0
HDL-ON_Android/Assets/Phone/HisenseTv/caidan.png | 0
HDL_ON/HDL_ON.projitems | 2
HDL-ON_Android/HDL-ON_Android.csproj | 15
HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs | 4
HDL-ON_Android/Assets/Phone/HisenseTv/shouye.png | 0
HDL-ON_Android/Assets/Phone/HisenseTv/offtvbj.png | 0
HDL-ON_Android/Assets/Phone/HisenseTv/onbj.png | 0
HDL_ON/UI/UI2/FuntionControlView/HisenseTV /HisenseTvPage.cs | 979 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 22 +
DLL/Android/Shared.Droid.dll | 0
HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs | 5
HDL-ON_Android/Assets/Phone/HisenseTv/kaiguan.png | 0
HDL_ON/Entity/Function/Function.cs | 8
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 1
HDL_ON/UI/UI2/2-Classification/FunctionPage.cs | 2
HDL_ON/DAL/Server/HttpUtil.cs | 4
HDL-ON_Android/Assets/Phone/HisenseTv/on.png | 0
HDL-ON_Android/Assets/Phone/AksIcon/aks.png | 0
HDL-ON_Android/Assets/Phone/HisenseTv/offbj.png | 0
25 files changed, 1,043 insertions(+), 13 deletions(-)
diff --git a/DLL/Android/Shared.Droid.dll b/DLL/Android/Shared.Droid.dll
new file mode 100644
index 0000000..47848d9
--- /dev/null
+++ b/DLL/Android/Shared.Droid.dll
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/AksIcon/aks.png b/HDL-ON_Android/Assets/Phone/AksIcon/aks.png
new file mode 100644
index 0000000..1def0ae
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/AksIcon/aks.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/AksIcon/like.png b/HDL-ON_Android/Assets/Phone/AksIcon/like.png
new file mode 100644
index 0000000..b8ae243
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/AksIcon/like.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/electricaltvhisense.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/electricaltvhisense.png
new file mode 100644
index 0000000..d6e3852
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/electricaltvhisense.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/caidan.png b/HDL-ON_Android/Assets/Phone/HisenseTv/caidan.png
new file mode 100644
index 0000000..f4fe166
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/caidan.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/kaiguan.png b/HDL-ON_Android/Assets/Phone/HisenseTv/kaiguan.png
new file mode 100644
index 0000000..53ba654
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/kaiguan.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/offbj.png b/HDL-ON_Android/Assets/Phone/HisenseTv/offbj.png
new file mode 100644
index 0000000..823db9a
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/offbj.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/offtvbj.png b/HDL-ON_Android/Assets/Phone/HisenseTv/offtvbj.png
new file mode 100644
index 0000000..c4335fc
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/offtvbj.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/on.png b/HDL-ON_Android/Assets/Phone/HisenseTv/on.png
new file mode 100644
index 0000000..5ce77d3
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/on.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/onbj.png b/HDL-ON_Android/Assets/Phone/HisenseTv/onbj.png
new file mode 100644
index 0000000..0e424cf
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/onbj.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/shouye.png b/HDL-ON_Android/Assets/Phone/HisenseTv/shouye.png
new file mode 100644
index 0000000..3542edb
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/shouye.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjia.png b/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjia.png
new file mode 100644
index 0000000..268d70b
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjia.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjian.png b/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjian.png
new file mode 100644
index 0000000..31369e7
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/HisenseTv/yingliangjian.png
Binary files differ
diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj
index 558a2ac..33669a4 100644
--- a/HDL-ON_Android/HDL-ON_Android.csproj
+++ b/HDL-ON_Android/HDL-ON_Android.csproj
@@ -195,7 +195,7 @@
<HintPath>..\DLL\HdlEzvizDroid.dll</HintPath>
</Reference>
<Reference Include="Shared.Droid">
- <HintPath>..\..\..\Shared.Droid.dll</HintPath>
+ <HintPath>..\DLL\Android\Shared.Droid.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
@@ -577,6 +577,18 @@
<AndroidAsset Include="Assets\Phone\AksIcon\ykq_pindaojia.png" />
<AndroidAsset Include="Assets\Phone\AksIcon\ykq_pindaojian.png" />
<AndroidAsset Include="Assets\Phone\AksIcon\ykq_toupin.png" />
+ <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\electricaltvhisense.png" />
+ <AndroidAsset Include="Assets\Phone\AksIcon\aks.png" />
+ <AndroidAsset Include="Assets\Phone\AksIcon\like.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\caidan.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\kaiguan.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\offbj.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\offtvbj.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\on.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\onbj.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\shouye.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\yingliangjia.png" />
+ <AndroidAsset Include="Assets\Phone\HisenseTv\yingliangjian.png" />
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\values\colors.xml" />
@@ -1794,6 +1806,7 @@
<Folder Include="Assets\Phone\FunctionIcon\Inverter\" />
<Folder Include="Assets\Phone\FunctionIcon\Electrical\MechanicalArm\" />
<Folder Include="Assets\Phone\AksIcon\" />
+ <Folder Include="Assets\Phone\HisenseTv\" />
</ItemGroup>
<Import Project="..\HDL_ON\HDL_ON.projitems" Label="Shared" Condition="Exists('..\HDL_ON\HDL_ON.projitems')" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs
index 099e550..18f78a5 100644
--- a/HDL_ON/DAL/Server/HttpUtil.cs
+++ b/HDL_ON/DAL/Server/HttpUtil.cs
@@ -19,11 +19,11 @@
/// 鍏叡鍩熷悕灏辫繎瑙f瀽
/// </summary>
//public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
- //public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
+ public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
const string APP_KEY = "HDL-HOME-APP-TEST";
const string SECRET_KEY = "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss";
- public const string GlobalRequestHttpsHost = "http://59.41.255.150:7777";//寮�鍙戠幆澧�
+ //public const string GlobalRequestHttpsHost = "http://59.41.255.150:7777";//寮�鍙戠幆澧�
//const string APP_KEY = "CPEVRLRT";//寮�鍙戠幆澧傾PP_KEY
//const string SECRET_KEY = "CPEVRLSJCPEVRLSZ";//寮�鍙戠幆澧僑ECRET_KEY
/// <summary>
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index d17fa05..6e0f81f 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -1561,6 +1561,7 @@
/// 褰遍煶涓帶
/// </summary>
public const string AvZkAiks = "av.zk.aiks";
+
/// <summary>
/// 钀ょ煶瑙嗛闂ㄩ攣spk鍒楄〃
/// </summary>
@@ -1571,6 +1572,8 @@
list.Add(VideoDoorLock);
return list;
}
+
+
/// <summary>
/// 褰遍煶涓帶spk鍒楄〃
/// </summary>
@@ -2014,6 +2017,10 @@
#region 瀹剁數
/// <summary>
+ /// 娴蜂俊鐢佃
+ /// </summary>
+ public const string ElectricalTvHisense = "electrical.tv.hisense";
+ /// <summary>
/// 瀹剁數銆佹彃搴�
/// </summary>
public const string ElectricSocket = "electrical.socket";
@@ -2127,6 +2134,7 @@
spkList.Add(ElectricTuyaWaterValve);
spkList.Add(ElectricTuyaWaterValve2);
spkList.Add(AirSwitch);
+ spkList.Add(ElectricalTvHisense);
return spkList;
}
diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems
index 8c7450c..2df66b3 100644
--- a/HDL_ON/HDL_ON.projitems
+++ b/HDL_ON/HDL_ON.projitems
@@ -591,6 +591,7 @@
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\Entity\KeypadEntity.cs" />
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\Entity\MovieLibraryEntity.cs" />
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\Entity\MovieLibraryInfoEntity.cs" />
+ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\HisenseTV \HisenseTvPage.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" />
@@ -623,5 +624,6 @@
<Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\" />
<Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\CommonView\" />
<Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\Entity\" />
+ <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\HisenseTV \" />
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
index 322afd6..63e0a38 100644
--- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
+++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
@@ -349,6 +349,16 @@
}
break;
+ case SPK.ElectricalTvHisense:
+ {
+ //娴蜂俊鐢佃
+ var form = new UI2.FuntionControlView.HisenseTV.HisenseTvPage(function, btnName, btnFromFloor, comerom, action);
+ MainPage.BasePageView.AddChidren(form);
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ form.Show();
+
+ }
+ break;
}
};
return eventHandler;
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index 4e8ddcf..e5d75d4 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -12,6 +12,9 @@
namespace HDL_ON.UI
{
+ /// <summary>
+ /// 鍒嗙被鐣岄潰
+ /// </summary>
public partial class ClassificationPage : FrameLayout
{
@@ -711,8 +714,12 @@
break;
case ShowFunction.Electric:
#region 鐢靛櫒
+
functionCount = FunctionList.List.GetElectricals().Count;
functionOnCount = FunctionList.List.GetElectricals().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+#if DEBUG
+ functionCount = 1;
+#endif
#endregion
break;
case ShowFunction.EnergyMonitoring:
@@ -833,10 +840,17 @@
IsMoreLines = true,
};
functionView.AddChidren(btnName);
-
- if (item != ShowFunction.Environmental && item != ShowFunction.Sensor && item != ShowFunction.VideoIntercom
- && item != ShowFunction.SecurityMonitoring && item != ShowFunction.FreshAir && item != ShowFunction.Music
- && item != ShowFunction.EnergyMonitoring && item != ShowFunction.SecurityCenter
+ //鍘绘帀鍔熻兘澶栭潰寮�鍏充釜鏁�;
+ if (item != ShowFunction.Aks
+ && item != ShowFunction.VideoDoorLock
+ && item != ShowFunction.Environmental
+ && item != ShowFunction.Sensor
+ && item != ShowFunction.VideoIntercom
+ && item != ShowFunction.SecurityMonitoring
+ && item != ShowFunction.FreshAir
+ && item != ShowFunction.Music
+ && item != ShowFunction.EnergyMonitoring
+ && item != ShowFunction.SecurityCenter
&& item != ShowFunction.Acst && item != ShowFunction.IpCam
&& functionCount != 0)
{
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
index 133fad5..b7d21a7 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -203,6 +203,7 @@
else if (function.spk == SPK.AvZkAiks)
{
//闅愯棌寮�鍏虫寜閽�
+ btnIcon.UnSelectedImagePath = "AksIcon/aks.png";
}
else if(function.spk == SPK.GroupControl) { }
else if (function.spk == SPK.HvacCac)
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
index 271b160..f7fe3ad 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
@@ -186,6 +186,8 @@
else if (titleId == StringId.Electric)
{
functionList.AddRange(FunctionList.List.GetElectricals());
+ functionList.Add(new Function { spk = SPK.ElectricalTvHisense, name = "娴蜂俊鐢佃1",sid="123456789"});
+ functionList.Add(new Function { spk = SPK.ElectricalTvHisense, name = "娴蜂俊鐢佃2", sid = "1234567890" });
}
else if (titleId == StringId.EnvironmentalScience)
{
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs
index 0376e08..f7b2203 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs
@@ -48,12 +48,12 @@
{
Height = Application.GetRealHeight(28),
Width = Application.GetRealWidth(20),
- SelectedBackgroundColor = MusicColor.ViewColor,
+ SelectedBackgroundColor = MusicColor.MusicTxet14SelectedColor,
BackgroundColor = 0x00000000,
Text = mList[i].filterName,
TextSize = TextSize.Text14,
TextColor = MusicColor.TextColor,
- SelectedTextColor = MusicColor.MusicTxet14SelectedColor,
+ SelectedTextColor = MusicColor.WhiteColor,
TextAlignment = TextAlignment.Center,
Padding = new Padding(4, 4, 4, 4),
Radius = (uint)Application.GetRealHeight(4),
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs
index 19321e1..ad1caf0 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs
@@ -34,6 +34,7 @@
TextColor = MusicColor.WhiteColor,
TextSize = TextSize.Text16,
TextAlignment = TextAlignment.CenterRight,
+ IsBold=true,
};
public Button btnName = new Button
@@ -43,8 +44,8 @@
Height = Application.GetRealHeight(20),
TextSize = TextSize.Text14,
TextColor = MusicColor.TextColor,
- TextAlignment = TextAlignment.Center,
- Padding = new Padding(0, 4, 0, 4),
+ TextAlignment = TextAlignment.CenterLeft,
+ Padding = new Padding(0, 0, 0, 0),
IsMoreLines = true,
};
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs
index 22357c3..3e82841 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs
@@ -78,7 +78,7 @@
this.topView.setBtn.Visible = true;
this.topView.setBtn.Width = Application.GetMinRealAverage(32);
this.topView.setBtn.Height = Application.GetMinRealAverage(32);
- this.topView.setBtn.UnSelectedImagePath = "Collection/CollectionGrayIcon.png";
+ this.topView.setBtn.UnSelectedImagePath = "AksIcon/like.png";
this.topView.topNameBtn.TextID = StringId.yingku;
this.AddChidren(topView.TopFLayoutView());
fLayout = new FrameLayout
@@ -162,7 +162,7 @@
Height = Application.GetRealHeight(30),
TextSize = TextSize.Text14,
TextColor = MusicColor.TextColor,
- Text = "鏇村鐨�...",
+ TextID = StringId.LoadMore,
TextAlignment = TextAlignment.TopCenter,
Padding = new Padding(0, 20, 0, 20),
};
diff --git a/HDL_ON/UI/UI2/FuntionControlView/HisenseTV /HisenseTvPage.cs b/HDL_ON/UI/UI2/FuntionControlView/HisenseTV /HisenseTvPage.cs
new file mode 100644
index 0000000..5a91d6c
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/HisenseTV /HisenseTvPage.cs
@@ -0,0 +1,979 @@
+锘縰sing Shared;
+using System;
+using System.Collections.Generic;
+using System.Text;
+using HDL_ON.UI.CSS;
+using HDL_ON.Entity;
+using HDL_ON.DriverLayer;
+using HDL_ON.UI.Music;
+using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock;
+using HDL_ON.UI.UI2.Intelligence.Automation;
+using System.Linq;
+using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView;
+using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity;
+
+namespace HDL_ON.UI.UI2.FuntionControlView.HisenseTV
+{
+ /// <summary>
+ /// 娴蜂俊鐢佃鐣岄潰
+ /// </summary>
+ public class HisenseTvPage : BaseFramLayout
+ {
+
+
+ #region 鈻� 鍙橀噺澹版槑___________________________
+ /// <summary>
+ /// 璁惧
+ /// </summary>
+ private Function device;
+ /// <summary>
+ /// 涓婁竴绾х晫闈㈢殑璁惧鍚嶅瓧鎺т欢
+ /// </summary>
+ private Button btnDeviceName;
+ /// <summary>
+ /// 涓婁竴绾х晫闈㈢殑鎴块棿鍚嶅瓧鎺т欢
+ /// </summary>
+ private Button btnRoomName;
+ /// <summary>
+ /// 澶撮儴甯冨眬
+ /// </summary>
+ private TopView topView;
+ /// <summary>
+ /// 褰撳墠璁惧鍚嶇О
+ /// </summary>
+ private Button btnCurrDeviceName;
+ /// <summary>
+ /// 鍖哄煙
+ /// </summary>
+ private Button btnCurrDeviceRoom;
+
+ /// <summary>
+ ///鏀惰棌鍥炬爣
+ /// </summary>
+ private Button btnCollectIcon;
+ /// <summary>
+ /// 闂ㄩ攣鐘舵��
+ /// </summary>
+ private Button btnDoorLockIcon;
+ /// <summary>
+ /// 琛ㄧず鏉ヨ嚜閭d釜鐣岄潰
+ /// </summary>
+ private CommonMethod.Comerom comerom;
+ /// <summary>
+ /// 鍒犻櫎璁惧鍚庨渶瑕佹洿鏂扮晫闈㈢殑鍥炶皟
+ /// </summary>
+ public Action action;
+ #endregion
+
+
+ /// <summary>
+ /// 鏋勯�犲嚱鏁�
+ /// </summary>
+ /// <param name="function">璁惧</param>
+ /// <param name="btnDeviceName">涓婁竴绾х晫闈㈢殑璁惧鍚嶅瓧鎺т欢(娉�:涓嶈兘浼爊ull,娌℃湁鍙互浼爊ew Button())</param>
+ /// <param name="btnRoomName">涓婁竴绾х晫闈㈢殑鎴块棿鍚嶅瓧鎺т欢(娉�:涓嶈兘浼爊ull,娌℃湁鍙互浼爊ew Button())</param>
+ public HisenseTvPage(Function function, Button btnDeviceName, Button btnRoomName, CommonMethod.Comerom comerom, Action action)
+ {
+ this.device = function;
+ this.btnDeviceName = btnDeviceName;
+ this.btnRoomName = btnRoomName;
+ this.comerom = comerom;
+ this.action = action;
+
+ }
+
+ public void Show()
+ {
+ //鍒濆鍖朥I
+ this.InitUI();
+ //鍒濆鍖栦簨浠�
+ this.EventListener();
+ //璇诲彇鏁版嵁
+ this.ReadData();
+
+ }
+
+
+ /// <summary>
+ /// 鍒濆鍖栫晫闈�
+ /// </summary>
+ private void InitUI()
+ {
+ #region ---鐣岄潰甯冨眬---
+ this.BackgroundColor = MusicColor.ViewColor;
+ this.topView = new TopView();
+ this.topView.setBtn.Visible = true;
+ this.topView.topNameBtn.TextID = StringId.dianshi;
+ this.AddChidren(topView.TopFLayoutView());
+
+ var vv = new VerticalScrolViewLayout
+ {
+ Y = topView.fLayout.Bottom,
+ Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
+ };
+ this.AddChidren(vv);
+ var baseFL = new BaseFramLayout();
+ vv.AddChidren(baseFL);
+
+ var backgroundFl = new FrameLayout
+ {
+ Y = Application.GetRealHeight(24),
+ X = Application.GetRealWidth(24),
+ Height = Application.GetRealHeight(682),
+ Width = Application.GetRealWidth(327),
+ BackgroundImagePath = "HisenseTv/onbj.png",
+ Name = "backgroundFl",
+ };
+ baseFL.AddChidren(backgroundFl);
+
+ baseFL.AdjustRealHeight(51);
+
+ btnCollectIcon = new Button
+ {
+ X = Application.GetRealWidth(273),
+ Y = Application.GetRealHeight(14),
+ Width = Application.GetRealWidth(40),
+ Height = Application.GetRealWidth(40),
+ UnSelectedImagePath = "MusicIcon/collect.png",
+ SelectedImagePath = "MusicIcon/collectSelected.png",
+ IsSelected = this.device.collect,
+ Name = "collect"
+ };
+ backgroundFl.AddChidren(btnCollectIcon);
+
+ 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,
+ IsBold = true
+ };
+ backgroundFl.AddChidren(btnCurrDeviceName);
+
+
+ btnCurrDeviceRoom = new Button
+ {
+ TextSize = TextSize.Text12,
+ TextColor = MusicColor.MusicNoTxetColor,
+ Width = Application.GetRealWidth(160),
+ Height = Application.GetRealHeight(17),
+ Y = btnCurrDeviceName.Bottom + Application.GetRealHeight(4),
+ X = Application.GetRealWidth(16),
+ Text = this.device.GetRoomListName(),
+ TextAlignment = TextAlignment.CenterLeft,
+ };
+ backgroundFl.AddChidren(btnCurrDeviceRoom);
+
+ int yHeight = btnCurrDeviceRoom.Bottom + Application.GetRealHeight(16);
+ var shouyeFL = new CustomFrameLayout();
+ backgroundFl.AddChidren(shouyeFL);
+ shouyeFL.X = Application.GetRealWidth(24);
+ shouyeFL.Y = yHeight;
+ shouyeFL.AddImageView();
+ shouyeFL.AddTextButtonView();
+ shouyeFL.GetImageButton().UnSelectedImagePath = "HisenseTv/shouye.png";
+ shouyeFL.GetTextButton().Text = "棣栭〉";
+
+
+ var kaiguanFL = new CustomFrameLayout();
+ backgroundFl.AddChidren(kaiguanFL);
+ kaiguanFL.X = shouyeFL.Right + Application.GetRealWidth(37);
+ kaiguanFL.Y = yHeight;
+ kaiguanFL.AddImageView();
+ kaiguanFL.AddTextButtonView();
+ kaiguanFL.GetImageButton().UnSelectedImagePath = "HisenseTv/kaiguan.png";
+ kaiguanFL.GetTextButton().Text = "鍏虫満";
+
+ var caidanFL = new CustomFrameLayout();
+ backgroundFl.AddChidren(caidanFL);
+ caidanFL.X = kaiguanFL.Right + Application.GetRealWidth(37);
+ caidanFL.Y = yHeight;
+ caidanFL.AddImageView();
+ caidanFL.AddTextButtonView();
+ caidanFL.GetImageButton().UnSelectedImagePath = "HisenseTv/caidan.png";
+ caidanFL.GetTextButton().Text = "鑿滃崟";
+
+ var yinliangFL = new FrameLayout();
+ backgroundFl.AddChidren(yinliangFL);
+ yinliangFL.Height = Application.GetRealHeight(200);
+ yinliangFL.Width = Application.GetRealWidth(68);
+ yinliangFL.Y = shouyeFL.Bottom + Application.GetRealHeight(24);
+ yinliangFL.X = shouyeFL.X;
+ yinliangFL.BackgroundColor = 0xffF2F3F7;
+ yinliangFL.Radius = (uint)Application.GetRealHeight(34);
+
+ Button btn_jia = new Button
+ {
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "HisenseTv/yingliangjia.png",
+ Y = Application.GetRealHeight(20),
+ Gravity = Gravity.CenterHorizontal,
+
+ };
+ yinliangFL.AddChidren(btn_jia);
+ Button btnText = new Button
+ {
+ Y = Application.GetRealHeight(90),
+ Height = Application.GetRealHeight(20),
+ Text = "闊抽噺",
+ TextColor = MusicColor.TextColor,
+ TextSize = TextSize.Text14,
+ Gravity = Gravity.CenterHorizontal,
+
+ };
+ yinliangFL.AddChidren(btnText);
+ Button btn_jian = new Button
+ {
+ Y = Application.GetRealHeight(148),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "HisenseTv/yingliangjian.png",
+ Gravity = Gravity.CenterHorizontal,
+
+ };
+ yinliangFL.AddChidren(btn_jian);
+
+
+ CustomButton bofangBtn = new CustomButton();
+ bofangBtn.Text = "鎾斁";
+ bofangBtn.Y = shouyeFL.Bottom + Application.GetRealHeight(24);
+ bofangBtn.X = yinliangFL.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(bofangBtn);
+
+
+ CustomButton zantingBtn = new CustomButton();
+ zantingBtn.Text = "鏆傚仠";
+ zantingBtn.Y = shouyeFL.Bottom + Application.GetRealHeight(24);
+ zantingBtn.X = bofangBtn.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(zantingBtn);
+
+
+ CustomButton kuaijinBtn = new CustomButton();
+ kuaijinBtn.Text = "蹇繘";
+ kuaijinBtn.Y = bofangBtn.Bottom + Application.GetRealHeight(16);
+ kuaijinBtn.X = yinliangFL.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(kuaijinBtn);
+
+
+ CustomButton kauituiBtn = new CustomButton();
+ kauituiBtn.Text = "蹇��";
+ kauituiBtn.Y = bofangBtn.Bottom + Application.GetRealHeight(16);
+ kauituiBtn.X = kuaijinBtn.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(kauituiBtn);
+
+
+
+
+ CustomButton jingyinBtn = new CustomButton();
+ jingyinBtn.Text = "闈欓煶";
+ jingyinBtn.Y = kuaijinBtn.Bottom + Application.GetRealHeight(16);
+ jingyinBtn.X = yinliangFL.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(jingyinBtn);
+
+
+ CustomButton shezhiBtn = new CustomButton();
+ shezhiBtn.Text = "璁剧疆";
+ shezhiBtn.Y = kuaijinBtn.Bottom + Application.GetRealHeight(16);
+ shezhiBtn.X = jingyinBtn.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(shezhiBtn);
+
+
+
+ CustomButton jiechujingyinBtn = new CustomButton();
+ jiechujingyinBtn.Text = "瑙i櫎闈欓煶";
+ jiechujingyinBtn.Y = jingyinBtn.Bottom + Application.GetRealHeight(16);
+ jiechujingyinBtn.X = yinliangFL.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(jiechujingyinBtn);
+
+
+ CustomButton fanhuiBtn = new CustomButton();
+ fanhuiBtn.Text = "杩斿洖";
+ fanhuiBtn.Y = jingyinBtn.Bottom + Application.GetRealHeight(16);
+ fanhuiBtn.X = jiechujingyinBtn.Right + Application.GetRealWidth(37);
+ backgroundFl.AddChidren(fanhuiBtn);
+
+
+ TypeFrameLayout typeFrameLayout = new TypeFrameLayout();
+ typeFrameLayout.middLayout.Y = yinliangFL.Bottom + Application.GetRealHeight(32);
+ typeFrameLayout.AddView(backgroundFl);
+
+
+
+ MuenFrameLayout muenFrameLayout = new MuenFrameLayout ();
+ muenFrameLayout.AddView(backgroundFl);
+ muenFrameLayout.parentFl.Y = Application.GetRealHeight(482);
+ muenFrameLayout.parentFl.X = Application.GetRealWidth(73);
+
+
+ typeFrameLayout.SetLfteClickListener((btn) => {
+
+
+ });
+ typeFrameLayout.SetRightClickListener((btn) => {
+
+
+ });
+
+ muenFrameLayout.SetLeftClickListener((b) => {
+
+ });
+
+
+
+ #endregion
+
+
+ }
+ /// <summary>
+ /// 娉ㄥ唽浜嬩欢
+ /// </summary>
+ private void EventListener()
+ {
+ //杩斿洖
+ this.topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
+ {
+ this.RemoveFromParent();
+ };
+ //璁剧疆
+ this.topView.clickSetBtn.MouseUpEventHandler += (sender, e) =>
+ {
+ CommonMethod.Current.MainThread(() =>
+ {
+ //璋冪敤绉�缁曠殑鐣岄潰
+ var infoView = new UI.FunctionBaseInfoSetPage(this.device, () =>
+ {
+ if (this.btnDeviceName == null || this.btnRoomName == null || this.device == null)
+ {
+ return;
+ }
+ ////鍒锋柊鏄剧ず
+ this.btnDeviceName.Text = this.device.name;
+ this.btnRoomName.Text = this.device.GetRoomListName();
+ this.btnCurrDeviceName.Text = this.device.name;
+ this.btnCurrDeviceRoom.Text = this.device.GetRoomListName();
+ this.CalculatedPosition();//閲嶆柊璁$畻瀹藉害
+
+ });
+ infoView.actionDel += () =>
+ {
+ //瑙g粦璁惧鍚�
+ this.RemoveFromParent();
+ this.action?.Invoke();
+
+ };
+ MainPage.BasePageView.AddChidren(infoView);
+ infoView.LoadPage();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ });
+ };
+ //鏀惰棌
+ this.btnCollectIcon.MouseUpEventHandler += (sender, e) =>
+ {
+ btnCollectIcon.IsSelected = this.device.collect = !btnCollectIcon.IsSelected;
+ this.device.CollectFunction();
+ };
+
+
+
+ }
+ /// <summary>
+ /// 鍒濆鏁版嵁
+ /// </summary>
+ private void ReadData()
+ {
+ CommonMethod.Current.Loading.Start();
+ CommonMethod.Current.SunThread(() =>
+ {
+ try
+ {
+ CommonMethod.Current.MainThread(() =>
+ {
+ });
+ }
+ catch { }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ CommonMethod.Current.Loading.Hide();
+ });
+ }
+ });
+ }
+
+
+
+ /// <summary>
+ /// 閲嶆柊璁$畻瀹藉害(璁惧鍚嶇О,鎴块棿鎺т欢)
+ /// </summary>
+ private void CalculatedPosition()
+ {
+ this.btnCurrDeviceName.Width = this.btnCurrDeviceName.GetTextWidth();
+ this.btnCurrDeviceName.Width += 10;
+ if (this.btnCurrDeviceName.GetTextWidth() > this.btnCollectIcon.X)
+ {
+ //閲嶆柊璁$畻瀹藉害
+ this.btnCurrDeviceName.Width = this.btnCollectIcon.X + Application.GetRealWidth(-10);
+ }
+ this.btnCurrDeviceRoom.Width = this.btnCurrDeviceRoom.GetTextWidth();
+ this.btnCurrDeviceRoom.Width += 10;
+ if (this.btnCurrDeviceRoom.GetTextWidth() > this.btnCollectIcon.X)
+ {
+ //閲嶆柊璁$畻瀹藉害
+ this.btnCurrDeviceRoom.Width = this.btnCollectIcon.X + Application.GetRealWidth(-20 - 10);
+ }
+ //this.cellFrame.X = this.btnCurrDeviceRoom.Right + Application.GetRealWidth(20);
+ }
+
+
+ }
+
+ /// <summary>
+ /// 鑷畾涔夛紙棣栭〉锛屽叧鏈猴紝鑿滃崟锛夊鍣�
+ /// </summary>
+ class CustomFrameLayout : FrameLayout
+ {
+ public const int widthFrameLayout = 68;
+ public const int heightFrameLayout = 68 + 8 + 20;
+ public const int interval = 37;//琛屼腑鐨勫垪闂撮殧鍊�
+
+ public CustomFrameLayout(int width = widthFrameLayout, int height = heightFrameLayout)
+ {
+ this.Width = Application.GetRealWidth(width);
+ this.Height = Application.GetRealHeight(height);
+ }
+ Button btnImage = new Button
+ {
+ Width = Application.GetRealWidth(68),
+ Height = Application.GetRealWidth(68),
+ Gravity = Gravity.TopCenter,
+ Name = "btnImage",
+
+ };
+ Button btnText = new Button
+ {
+ Width = Application.GetRealWidth(68),
+ Height = Application.GetRealWidth(20),
+ TextID = StringId.dangqianmenweiguan,
+ TextSize = TextSize.Text14,
+ TextColor = MusicColor.TextColor,
+ TextAlignment = TextAlignment.Center,
+ Gravity = Gravity.CenterHorizontal,
+ Name = "btnText",
+ IsMoreLines = true,
+ };
+ public void AddImageView()
+ {
+ this.AddChidren(btnImage);
+ }
+ public void AddTextButtonView()
+ {
+ btnText.Y = Application.GetRealHeight(8) + btnImage.Bottom;
+ this.AddChidren(btnText);
+ }
+ public Button GetImageButton()
+ {
+ return this.btnImage;
+ }
+ public Button GetTextButton()
+ {
+ return this.btnText;
+ }
+
+ /// <summary>
+ /// 浜嬩欢鐩戝惉鏂规硶
+ /// </summary>
+ /// <param name="action">鍥炶皟(绗竴涓槸鐖剁被瀵硅薄;绗簩涓槸鍥炬爣瀵硅薄;绗笁涓槸鐘舵�佸璞�</param>
+ /// <param name="button1">娉ㄦ剰:鍦⊿etClickListener()鍓嶉潰璋冪敤AddImageView()鎵嶆湁鏁�</param>
+ /// <param name="button2">娉ㄦ剰:鍦⊿etClickListener()鍓嶉潰璋冪敤AddImageView()鎵嶆湁鏁�</param>
+ public void SetClickListener(Action<FrameLayout, Button, Button> action)
+ {
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ this.BackgroundColor = 0xFFF2F3F7;
+ action?.Invoke(this, btnImage, btnText);
+ };
+ this.MouseDownEventHandler += DownClick;
+ btnImage.MouseDownEventHandler += DownClick;
+ btnText.MouseDownEventHandler += DownClick;
+
+
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ this.BackgroundColor = 0x00000000;
+ };
+ this.MouseUpEventHandler += UpClick;
+ btnImage.MouseUpEventHandler += UpClick;
+ btnText.MouseUpEventHandler += UpClick;
+
+ }
+
+ }
+ /// <summary>
+ /// 鎸夐敭瀹瑰櫒
+ /// </summary>
+ class CustomButton : Button
+ {
+
+ public CustomButton()
+ {
+
+ this.Width = Application.GetRealWidth(68);
+ this.Height = Application.GetRealHeight(38);
+ this.TextSize = 14;
+ this.TextColor = MusicColor.TextColor;
+ this.TextAlignment = TextAlignment.Center;
+ this.IsMoreLines = true;
+ this.BackgroundColor = 0xffECEDEE;
+ this.Radius = (uint)Application.GetRealHeight(30);
+ }
+
+ /// <summary>
+ /// 浜嬩欢鐩戝惉鏂规硶
+ /// </summary>
+ /// <param name="action">鍥炶皟(绗竴涓槸鐖剁被瀵硅薄</param>
+ public void SetClickListener(Action<Button> action)
+ {
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ this.BackgroundColor = 0xFFF2F3F7;
+ action?.Invoke(this);
+ };
+ this.MouseDownEventHandler += DownClick;
+
+
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ this.BackgroundColor = 0x00000000;
+ };
+ this.MouseUpEventHandler += UpClick;
+
+ }
+
+ }
+ /// <summary>
+ /// 绫诲瀷锛堟帶鍒� 淇″彿婧愶級瀹瑰櫒
+ /// </summary>
+ class TypeFrameLayout
+ {
+ #region ----鎺у埗 淇″彿婧�----
+ public FrameLayout middLayout = new FrameLayout
+ {
+ Height = Application.GetRealHeight(29),
+ Y = Application.GetRealHeight(32),
+ };
+
+
+ FrameLayout leftLayout = new FrameLayout
+ {
+ X = Application.GetRealWidth(42),
+ Height = Application.GetRealHeight(29),
+ Width = Application.GetRealWidth(32),
+
+ };
+
+
+ Button leftBtnTitle = new Button
+ {
+ Height = Application.GetRealHeight(23),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = MusicColor.TextColor,
+ SelectedTextColor = MusicColor.MusicTxet14SelectedColor,
+ TextSize = TextSize.Text16,
+ TextID = StringId.kongzhi,
+ IsBold=true,
+ };
+
+
+
+ Button leftBtnLine = new Button
+ {
+
+ Height = Application.GetRealHeight(2),
+ BackgroundColor = MusicColor.TextColor,
+ SelectedBackgroundColor = MusicColor.MusicTxet14SelectedColor,
+ Gravity = Gravity.CenterHorizontal,
+ };
+
+ //棰戦亾鐐瑰嚮鎺т欢
+ FrameLayout clickLeftLayout = new FrameLayout
+ {
+
+ };
+
+
+ FrameLayout rightLayout = new FrameLayout
+ {
+ Width = Application.GetRealWidth(48),
+ };
+ Button rightBtnTitle = new Button
+ {
+ Height = Application.GetRealHeight(23),
+ Width = Application.GetRealWidth(48),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = MusicColor.TextColor,
+ SelectedTextColor = MusicColor.MusicTxet14SelectedColor,
+ TextSize = TextSize.Text16,
+ Text = "淇″彿婧�",
+ IsBold = true,
+ };
+
+ Button rightBtnLine = new Button
+ {
+ Height = Application.GetRealHeight(2),
+ BackgroundColor = MusicColor.TextColor,
+ SelectedBackgroundColor = MusicColor.MusicTxet14SelectedColor,
+ Gravity = Gravity.CenterHorizontal,
+ };
+
+
+ //淇″彿婧愮偣鍑绘帶浠�
+ FrameLayout clickRightLayout = new FrameLayout
+ {
+
+ };
+
+ #endregion
+
+
+
+
+
+
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="layout"></param>
+ public void AddView(FrameLayout layout)
+ {
+ layout.AddChidren(middLayout);
+ middLayout.AddChidren(leftLayout);
+
+ leftLayout.AddChidren(leftBtnTitle);
+ leftLayout.AddChidren(leftBtnLine);
+ leftLayout.AddChidren(clickLeftLayout);
+ middLayout.AddChidren(rightLayout);
+ rightLayout.AddChidren(rightBtnTitle);
+ rightLayout.AddChidren(rightBtnLine);
+ rightLayout.AddChidren(clickRightLayout);
+
+ leftBtnTitle.Width = leftLayout.Width;
+ leftBtnLine.Y = leftBtnTitle.Bottom + Application.GetRealHeight(4);
+ if (leftBtnTitle.GetTextWidth() < leftBtnTitle.Width)
+ {
+ leftBtnTitle.Width = leftBtnTitle.GetTextWidth();
+ }
+ leftBtnLine.Width = leftBtnTitle.Width;
+
+ clickLeftLayout.Height = leftLayout.Height;
+ clickLeftLayout.Width = leftLayout.Width;
+
+
+ rightLayout.X = leftLayout.Right + Application.GetRealWidth(171);
+ rightLayout.Y = leftLayout.Y;
+ rightLayout.Height = leftLayout.Height;
+
+
+
+ rightBtnLine.Y = rightBtnTitle.Bottom + Application.GetRealHeight(4);
+
+ if (rightBtnTitle.GetTextWidth() < rightBtnTitle.Width)
+ {
+ rightBtnTitle.Width = rightBtnTitle.GetTextWidth();
+ }
+ rightBtnLine.Width = rightBtnTitle.Width;
+
+ clickRightLayout.Height = leftLayout.Height;
+ clickRightLayout.Width = leftLayout.Width;
+
+
+
+ //鍒濆鍊�
+ leftBtnTitle.IsSelected = true;
+ leftBtnLine.IsSelected = true;
+ leftBtnLine.Visible = true;
+ rightBtnTitle.IsSelected = false;
+ rightBtnLine.IsSelected = false;
+ rightBtnLine.Visible = false;
+
+ }
+
+ /// <summary>
+ /// 淇″彿婧愮洃鍚柟娉�
+ /// </summary>
+ /// <param name="action">鍥炶皟(绗竴涓槸鐖剁被瀵硅薄</param>
+ public void SetRightClickListener(Action<Button> action)
+ {
+ //棰戦亾鐐瑰嚮浜嬩欢
+ clickLeftLayout.MouseDownEventHandler += (sen, e) =>
+ {
+ leftBtnTitle.IsSelected = true;
+ leftBtnLine.IsSelected = true;
+ leftBtnLine.Visible = true;
+ rightBtnTitle.IsSelected = false;
+ rightBtnLine.IsSelected = false;
+ rightBtnLine.Visible = false;
+ };
+
+ }
+ /// <summary>
+ /// 鎺у埗鐩戝惉鏂规硶
+ /// </summary>
+ /// <param name="action">鍥炶皟(绗竴涓槸鐖剁被瀵硅薄</param>
+ public void SetLfteClickListener(Action<Button> action)
+ {
+ //鎺у埗鐐瑰嚮浜嬩欢
+ clickRightLayout.MouseDownEventHandler += (sen, e) =>
+ {
+ leftBtnTitle.IsSelected = false;
+ leftBtnLine.IsSelected = false;
+ leftBtnLine.Visible = false;
+ rightBtnTitle.IsSelected = true;
+ rightBtnLine.IsSelected = true;
+ rightBtnLine.Visible = true;
+
+ };
+ }
+
+
+
+ }
+ /// <summary>
+ /// 鑿滃崟瀹瑰櫒
+ /// </summary>
+ class MuenFrameLayout
+ {
+
+ public FrameLayout parentFl = new FrameLayout
+ {
+ Width = Application.GetRealWidth(180),
+ Height = Application.GetRealWidth(180),
+ Radius = (uint)Application.GetRealHeight(90),
+ BackgroundColor= 0xffF2F3F7,
+
+ };
+
+ Button btnTop = new Button
+ {
+ Y = Application.GetRealWidth(16),
+ X = Application.GetRealWidth(78),
+ Width = Application.GetRealWidth(24),
+ Height = Application.GetRealHeight(20),
+ UnSelectedImagePath = "AksIcon/shang.png",
+ SelectedImagePath = "AksIcon/shang_selected.png",
+ Name = "涓�",
+ };
+ Button btnBottom = new Button
+ {
+ Y = Application.GetRealWidth(144),
+ X = Application.GetRealWidth(78),
+ Width = Application.GetRealWidth(24),
+ Height = Application.GetRealHeight(20),
+ UnSelectedImagePath = "AksIcon/xia.png",
+ SelectedImagePath = "AksIcon/xia_selected.png",
+ Name = "涓�",
+ };
+ Button btnLeft = new Button
+ {
+ Y = Application.GetRealWidth(78),
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(20),
+ Height = Application.GetRealHeight(24),
+ UnSelectedImagePath = "AksIcon/zuo.png",
+ SelectedImagePath = "AksIcon/zuo_selected.png",
+ Name = "宸�",
+
+ };
+ Button btnRight = new Button
+ {
+ Y = Application.GetRealWidth(78),
+ X = Application.GetRealWidth(144),
+ Width = Application.GetRealWidth(20),
+ Height = Application.GetRealHeight(24),
+ UnSelectedImagePath = "AksIcon/you.png",
+ SelectedImagePath = "AksIcon/you_selected.png",
+ Name = "鍙�",
+
+ };
+
+ Button btnOkbj = new Button
+ {
+ //Y = Application.GetRealWidth(52),
+ //X = Application.GetRealWidth(52),
+ Width = Application.GetRealWidth(76),
+ Height = Application.GetRealWidth(76),
+ Radius = (uint)Application.GetRealHeight(38),
+ Gravity=Gravity.Center,
+ BackgroundColor = MusicColor.WhiteColor,
+
+
+ };
+ Button btnOk = new Button
+ {
+ //Y = Application.GetRealWidth(76),
+ //X = Application.GetRealWidth(76),
+ Gravity = Gravity.Center,
+ Width = Application.GetRealWidth(28),
+ Height = Application.GetRealWidth(28),
+ Radius = (uint)Application.GetRealHeight(14),
+ BackgroundColor = MusicColor.SelectedColor,
+ Name = "纭畾"
+ };
+
+ public void AddView(FrameLayout layout)
+ {
+ layout.AddChidren(parentFl);
+ parentFl.AddChidren(btnTop);
+ parentFl.AddChidren(btnBottom);
+ parentFl.AddChidren(btnLeft);
+ parentFl.AddChidren(btnRight);
+ parentFl.AddChidren(btnOkbj);
+ parentFl.AddChidren(btnOk);
+
+
+ }
+
+ /// <summary>
+ /// 涓�
+ /// </summary>
+ /// <param name="action"></param>
+ public void SetTopClickListener(Action<KeypadEntity> action)
+ {
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ btnTop.IsSelected = false;
+ //寮硅捣鏉ヨ繕鍘熻儗鏅鑹�
+ };
+ btnTop.MouseUpEventHandler += UpClick;
+
+
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ //鎸変笅鍘绘敼鍙樿儗鏅鑹�
+ btnTop.IsSelected = true;
+ KeypadEntity keypadEntity = new KeypadEntity();
+ keypadEntity.name = btnTop.Name;
+ keypadEntity.keypad = "key_up";
+ action?.Invoke(keypadEntity);
+ };
+ btnTop.MouseDownEventHandler += DownClick;
+ }
+
+ /// <summary>
+ /// 涓�
+ /// </summary>
+ /// <param name="action"></param>
+ public void SetBottomClickListener(Action<KeypadEntity> action)
+ {
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ btnBottom.IsSelected = false;
+
+
+ //寮硅捣鏉ヨ繕鍘熻儗鏅鑹�
+ };
+ btnBottom.MouseUpEventHandler += UpClick;
+
+
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ btnBottom.IsSelected = true;
+ KeypadEntity keypadEntity = new KeypadEntity();
+ keypadEntity.name = btnBottom.Name;
+ keypadEntity.keypad = "key_down";
+ action?.Invoke(keypadEntity);
+ //鎸変笅鍘绘敼鍙樿儗鏅鑹�
+ };
+ btnBottom.MouseDownEventHandler += DownClick;
+ }
+ /// <summary>
+ /// 宸�
+ /// </summary>
+ /// <param name="action"></param>
+ public void SetLeftClickListener(Action<KeypadEntity> action)
+ {
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ btnLeft.IsSelected = false;
+ //寮硅捣鏉ヨ繕鍘熻儗鏅鑹�
+ };
+ btnLeft.MouseUpEventHandler += UpClick;
+
+
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ btnLeft.IsSelected = true;
+ KeypadEntity keypadEntity = new KeypadEntity();
+ keypadEntity.name = btnLeft.Name;
+ keypadEntity.keypad = "key_left";
+ action?.Invoke(keypadEntity);
+ //鎸変笅鍘绘敼鍙樿儗鏅鑹�
+ };
+ btnLeft.MouseDownEventHandler += DownClick;
+ }
+ /// <summary>
+ /// 鍙�
+ /// </summary>
+ /// <param name="action"></param>
+ public void SetRightClickListener(Action<KeypadEntity> action)
+ {
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ btnRight.IsSelected = false;
+ //寮硅捣鏉ヨ繕鍘熻儗鏅鑹�
+ };
+ btnRight.MouseUpEventHandler += UpClick;
+
+
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ //鎸変笅鍘绘敼鍙樿儗鏅鑹�
+ btnRight.IsSelected = true;
+ KeypadEntity keypadEntity = new KeypadEntity();
+ keypadEntity.name = btnRight.Name;
+ keypadEntity.keypad = "key_right";
+ action?.Invoke(keypadEntity);
+ };
+ btnRight.MouseDownEventHandler += DownClick;
+ }
+
+
+
+ /// <summary>
+ /// ok
+ /// </summary>
+ /// <param name="action"></param>
+ public void SetOkClickListener(Action<KeypadEntity> action)
+ {
+ EventHandler<MouseEventArgs> UpClick = (sender, e) =>
+ {
+ btnOk.BackgroundColor = MusicColor.SelectedColor;// this.UpBackgroundColor;
+ //寮硅捣鏉ヨ繕鍘熻儗鏅鑹�
+ };
+ btnOk.MouseUpEventHandler += UpClick;
+
+
+ EventHandler<MouseEventArgs> DownClick = (sender, e) =>
+ {
+ KeypadEntity keypadEntity = new KeypadEntity();
+ keypadEntity.name = btnOk.Name;
+ keypadEntity.keypad = "key_ok";
+ action?.Invoke(keypadEntity);
+ btnOk.BackgroundColor = 0xffF2F3F7;
+ };
+ btnOk.MouseDownEventHandler += DownClick;
+ }
+
+
+
+ }
+
+
+
+}
--
Gitblit v1.8.0