From b562a582ac3a288193e6e4f57c5eff8a344305a4 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期五, 27 九月 2024 13:52:17 +0800
Subject: [PATCH] Update AndroidManifest.xml
---
HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs | 274 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 265 insertions(+), 9 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs
index 21a8800..05dee0c 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs
@@ -7,11 +7,28 @@
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.Entity;
+using System.Reflection;
+using System.Collections;
+
namespace HDL_ON.UI.UI2.FuntionControlView.Aks
{
+ /// <summary>
+ /// 鍩冨厠鏂富鐣岄潰
+ /// </summary>
public class AksPage : FrameLayout
{
#region 鈻� 鍙橀噺澹版槑___________________________
+ /// <summary>
+ /// 閬ユ帶鍣ㄥ垪琛�
+ /// </summary>
+ private List<RemoteControlEntity> remoteControlList;
+
+ /// 鏃跺簭鍣ㄥ垪琛�
+ /// </summary>
+ private List<SequencerEntity> sequencerList;
/// <summary>
/// 璁惧
/// </summary>
@@ -45,6 +62,16 @@
/// 鍒犻櫎璁惧鍚庨渶瑕佹洿鏂扮晫闈㈢殑鍥炶皟
/// </summary>
public Action action;
+ /// <summary>
+ /// 璁板綍褰撳墠璁惧
+ /// </summary>
+ public IntType currnetIntType = IntType.none;
+ /// <summary>
+ /// 璁板綍褰撳墠閫夋嫨鐨勭储寮曞��
+ /// </summary>
+ public int indexValue = -1;
+
+
public VerticalScrolViewLayout vv;
#endregion
@@ -89,7 +116,7 @@
this.BackgroundColor = MusicColor.ViewColor;
this.topView = new TopView();
this.topView.setBtn.Visible = true;
- this.topView.topNameBtn.Text= this.device.name;
+ this.topView.topNameBtn.Text = this.device.name;
this.AddChidren(topView.TopFLayoutView());
}
/// <summary>
@@ -101,12 +128,12 @@
{
Y = topView.fLayout.Bottom,
Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
+
};
this.AddChidren(vv);
- AksMusicPage aksMusicPage = new AksMusicPage();
- this.vv.AddChidren(aksMusicPage);
- aksMusicPage.Show();
-
+
+ //杩涙潵榛樿鎾斁鍣ㄧ晫闈�
+ //this.SwitchUI(IntType.Player);
}
/// <summary>
/// 娉ㄥ唽浜嬩欢
@@ -116,6 +143,8 @@
//杩斿洖
this.topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
{
+ //娓呯┖鎵�鏈夌紦瀛樻暟鎹�
+ AksCommonMethod.Current.ClearData();
this.RemoveFromParent();
};
//璁剧疆
@@ -133,8 +162,8 @@
////鍒锋柊鏄剧ず
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.btnCurrDeviceName.Text = this.device.name;
+ //this.btnCurrDeviceRoom.Text = this.device.GetRoomListName();
//this.CalculatedPosition();//閲嶆柊璁$畻瀹藉害
});
@@ -163,17 +192,244 @@
{
try
{
-
+ this.remoteControlList = SendMethod.Current.GetRemoteControlLits(this.device.deviceId);
+ this.sequencerList = SendMethod.Current.GetSequencerLits(this.device.deviceId);
+ //TestData(this.remoteControlList);
}
catch { }
finally
{
- Application.RunOnMainThread(() =>
+ CommonMethod.Current.MainThread(() =>
{
CommonMethod.Current.Loading.Hide();
+
+ if (this.remoteControlList.Count > 0)
+ {
+ if (this.isExistType(IntType.Player))
+ {
+ //鏈夋挱鏀剧被鍨嬮仴鎺у櫒浼樺厛鏄剧ず
+ this.SwitchUI(IntType.Player);
+ }
+ else
+ {
+ //榛樿鍙栫涓�浣�
+ this.indexValue = 0;
+ var type = (IntType)this.remoteControlList[this.indexValue].type;
+ this.SwitchUI(type);
+ }
+
+ }
+
});
}
});
}
+ /// <summary>
+ /// 鐣岄潰鏄剧ず(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�)
+ /// </summary>
+ private void SwitchUI(IntType type)
+ {
+ //if (this.currnetIntType == type)
+ //{
+ // //鍘绘帀鍒ゆ柇绫诲瀷,鍥犱负鍙兘瀛樺湪澶氫釜鍚岀被鍨�
+ // return;
+ //}
+ if (IntType.none == type)
+ {
+ return;
+ }
+ if (this.vv == null)
+ {
+ return;
+ }
+ this.vv.RemoveAll();
+ var remoteContro = this.remoteControlList[this.indexValue];
+ switch (type)
+ {
+ case IntType.Player:
+ {
+ MusicPage musicPage = new MusicPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(musicPage);
+ musicPage.Show();
+ musicPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+ }
+ break;
+ case IntType.HiFi:
+ {
+ GfPage gfPage = new GfPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(gfPage);
+ gfPage.Show();
+ gfPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+
+ }
+ break;
+ case IntType.TV:
+ {
+
+ TvPage tvPage = new TvPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(tvPage);
+ tvPage.Show();
+ tvPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+ }
+ break;
+ case IntType.STB:
+ {
+ JdhPage jdhPage = new JdhPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(jdhPage);
+ jdhPage.Show();
+ jdhPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+ }
+ break;
+ case IntType.Projector:
+ {
+ TyyPage tyyPage = new TyyPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(tyyPage);
+ tyyPage.Show();
+ tyyPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+ }
+ break;
+ case IntType.Control:
+ {
+
+ YkqPage ykqPage = new YkqPage(remoteContro, this.sequencerList);
+ this.vv.AddChidren(ykqPage);
+ ykqPage.Show();
+ ykqPage.action += (deviceType) =>
+ {
+ SelectedType();
+ };
+
+ }
+ break;
+
+ }
+
+ }
+ /// <summary>
+ /// 鐣岄潰鍒囨崲(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�)
+ /// </summary>
+ private void SelectedType()
+ {
+ var deviceTypeList = GetRemoteControlList();
+ ///涔嬪墠鐨勭姸鎬佹枃鏈�
+ string ccurrnetDeviceStr = "";
+ if (indexValue != -1 && indexValue < deviceTypeList.Count)
+ {
+ ccurrnetDeviceStr = deviceTypeList[indexValue].name;
+ }
+ PublicInterface conditionView = new PublicInterface();
+ conditionView.SingleSelectionShow(this, deviceTypeList, "璁惧閫夋嫨", ccurrnetDeviceStr
+ , (index) =>
+ {
+ if (this.indexValue == index)
+ {
+ //鍚屼竴涓澶囦笉澶勭悊;
+ return;
+ }
+ var remoteControl = deviceTypeList[index];
+ this.indexValue = index;
+ this.currnetIntType = (IntType)remoteControl.type;
+ this.SwitchUI((IntType)remoteControl.type);
+
+ });
+ }
+
+
+
+
+ public enum IntType
+ {
+ /// <summary>
+ /// 娌℃湁
+ /// </summary>
+ none = 0,
+ /// <summary>
+ /// 鎾斁鍣�
+ /// </summary>
+ Player = 1,
+ /// <summary>
+ /// 鍔熸斁
+ /// </summary>
+ HiFi = 2,
+ /// <summary>
+ /// 鐢佃
+ /// </summary>
+ TV = 3,
+ /// <summary>
+ /// 鏈洪《鐩�
+ /// </summary>
+ STB = 4,
+ /// <summary>
+ /// 鎶曞奖浠�
+ /// </summary>
+ Projector = 5,
+ /// <summary>
+ /// 涓囪兘閬ユ帶鍣�
+ /// </summary>
+ Control = 6,
+ }
+
+ /// <summary>
+ /// 鑾峰彇閬ユ帶鍣ㄥ垪琛�
+ /// </summary>
+ /// <returns></returns>
+ private List<RemoteControlEntity> GetRemoteControlList()
+ {
+ if (this.remoteControlList == null || this.remoteControlList.Count == 0)
+ {
+ return new List<RemoteControlEntity>();
+ }
+ return this.remoteControlList;
+ }
+
+ /// <summary>
+ /// 鏄惁瀛樺湪绫诲瀷
+ /// </summary>
+ /// <param name="type">(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�)</param>
+ /// <returns></returns>
+ private bool isExistType(IntType type)
+ {
+
+ var remoteControls = this.GetRemoteControlList();
+ for (int i = 0; i < remoteControls.Count; i++)
+ {
+ var re = remoteControls[i];
+ if ((IntType)re.type == type)
+ {
+ this.indexValue = i;
+ return true;
+ }
+
+ }
+ return false;
+ }
+
+
+ private void TestData(List<RemoteControlEntity> list)
+ {
+ list.Add(new RemoteControlEntity { deviceId = "33331", rcId = "1", type = 1, name = "鎾斁鍣�" });
+ list.Add(new RemoteControlEntity { deviceId = "33332", rcId = "2", type = 2, name = "鍔熸斁" });
+ list.Add(new RemoteControlEntity { deviceId = "33333", rcId = "3", type = 3, name = "鐢佃" });
+ list.Add(new RemoteControlEntity { deviceId = "33334", rcId = "4", type = 4, name = "鏈洪《鐩�" });
+ list.Add(new RemoteControlEntity { deviceId = "33335", rcId = "5", type = 5, name = "鎶曞奖浠�" });
+ list.Add(new RemoteControlEntity { deviceId = "33336", rcId = "6", type = 6, name = "涓囪兘閬ユ帶鍣�" });
+ }
+
+
}
}
--
Gitblit v1.8.0