From e552072d347efcfaed35ebb8050beb741f77badd Mon Sep 17 00:00:00 2001
From: Tong <1025782220@qq.com>
Date: 星期四, 02 九月 2021 16:01:48 +0800
Subject: [PATCH] 解决home键、荧石sdk冲突
---
HDL_ON/UI/UI2/1-HomePage/MessageCenterPage.cs | 210 +++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 180 insertions(+), 30 deletions(-)
diff --git a/HDL_ON/UI/UI2/1-HomePage/MessageCenterPage.cs b/HDL_ON/UI/UI2/1-HomePage/MessageCenterPage.cs
index 829146d..eb5f464 100644
--- a/HDL_ON/UI/UI2/1-HomePage/MessageCenterPage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/MessageCenterPage.cs
@@ -4,7 +4,9 @@
using System.Collections.Generic;
using System.Threading;
using HDL_ON.DAL.Server;
-
+#if DEBUG
+using Xamarin.Essentials;
+#endif
namespace HDL_ON.UI
{
/// <summary>
@@ -25,16 +27,17 @@
/// <summary>
/// menuView
/// </summary>
- FrameLayout menuView;
+ HorizontalScrolViewLayout menuView;//2021-08-27 澧炲姞澶氫簡涓�涓彍鍗曟寜閽墍浠ユ敼涓烘粴鍔ㄦ帶浠�
MenuButton allMenuButton;
MenuButton shareMenuButton;
MenuButton alarmMenuButton;
MenuButton systemMenuButton;
+ MenuButton propertyMenuButton;//澧炲姞鐗╀笟閫氱煡鎸夐挳
FrameLayout messageView;
/// <summary>
/// 鏄剧ず鐨勬秷鎭被鍨�
- /// 0鍏ㄩ儴 1鍒嗕韩涓庡姛鑳� 2鎶ヨ绫� 3绯荤粺淇℃伅
+ /// 0鍏ㄩ儴 1鍒嗕韩涓庡姛鑳� 2鎶ヨ绫� 3绯荤粺淇℃伅 4鐗╀笟鍏憡
/// </summary>
int showMesType = 0;
/// <summary>
@@ -42,6 +45,17 @@
/// </summary>
List<PushMessageInfo> PushMessageInfoList = new List<PushMessageInfo>();
+ /// <summary>
+ /// 椤甸潰鍏抽棴鏃堕棿
+ /// </summary>
+ Action backAction;
+
+ public override void RemoveFromParent()
+ {
+ UnregisterGetPushMessageAction();
+ base.RemoveFromParent();
+ backAction?.Invoke();
+ }
/// <summary>
///
@@ -58,12 +72,13 @@
/// <param name="backAction"></param>
public void LoadPage(Action backAction)
{
- new TopViewDiv(bodyView, Language.StringByID(StringId.MessageCenter)).LoadTopView(backAction);
+ this.backAction = backAction;
+ new TopViewDiv(bodyView, Language.StringByID(StringId.MessageCenter)).LoadTopView();
AddTopMenuView();
AddMessageView();
MenuButtonSelect(showMesType);
-
+ RegisterGetPushMessageAction();
//娴嬭瘯浠g爜
//AddEmptyTipView();
//TestLoad();
@@ -75,14 +90,21 @@
void AddTopMenuView()
{
- menuView = new FrameLayout()
+ menuView = new HorizontalScrolViewLayout()
{
Y = Application.GetRealHeight(64),
Height = Application.GetRealWidth(117),
BackgroundColor = CSS_Color.MainBackgroundColor,
+ HorizontalScrollBarEnabled = false//闅愯棌婊氬姩鏉�
};
bodyView.AddChidren(menuView);
+ //宸adding View
+ menuView.AddChidren(new Button()
+ {
+ Width = Application.GetRealWidth(15),
+ BackgroundColor = CSS_Color.viewTranslucence
+ });
#region 鍏ㄩ儴鎸夐挳
allMenuButton = new MenuButton()
@@ -99,7 +121,26 @@
MenuButtonSelect(0);
};
allMenuButton.SelectAction = allAction;
- #endregion
+ //娴嬭瘯鎻愬墠褰撳墠鎺ㄩ�両D
+ allMenuButton.ImageButton.MouseLongEventHandler = (sender, e) =>
+ {
+#if DEBUG
+
+ CopyToClipboard("鎺ㄩ�両D锛�" + OnAppConfig.Instance.PushId);
+#else
+ //妫�娴嬫槸鍚﹁幏鍙栨帹閫両D鎴愬姛锛屾彁绀烘帹閫佹敞鍐屾槸鍚︽甯�
+ if (string.IsNullOrEmpty(OnAppConfig.Instance.PushId))
+ {
+ Utlis.ShowTip(Language.StringByID(StringId.PushException));
+ }
+ else
+ {
+ Utlis.ShowTip(Language.StringByID(StringId.PushNormal));
+ }
+#endif
+
+ };
+#endregion
#region 鍒嗕韩涓庡姛鑳�
shareMenuButton = new MenuButton()
@@ -111,6 +152,7 @@
shareMenuButton.ImageButton.SelectedImagePath = "Collection/MesCenter/ShareOn.png";
shareMenuButton.ImageButton.UnSelectedImagePath = "Collection/MesCenter/Share.png";
shareMenuButton.TextButton.TextID = StringId.SharingAndFunctionality;
+ shareMenuButton.TextButton.IsMoreLines = true;
Action shateAction = () =>
{
MenuButtonSelect(1);
@@ -118,7 +160,7 @@
shareMenuButton.SelectAction = shateAction;
#endregion
- #region 鎶ヨ绫�
+#region 鎶ヨ绫�
alarmMenuButton = new MenuButton()
{
X = shareMenuButton.Right,
@@ -133,9 +175,9 @@
MenuButtonSelect(2);
};
alarmMenuButton.SelectAction = alarmAction;
- #endregion
+#endregion
- #region 绯荤粺淇℃伅
+#region 绯荤粺淇℃伅
systemMenuButton = new MenuButton()
{
X = alarmMenuButton.Right,
@@ -151,6 +193,30 @@
};
systemMenuButton.SelectAction = systemAction;
#endregion
+
+ #region 鐗╀笟閫氱煡
+ propertyMenuButton = new MenuButton()
+ {
+ X = systemMenuButton.Right,
+ Y = Application.GetRealWidth(16),
+ };
+ //menuView.AddChidren(propertyMenuButton); //鍏堝睆钄�
+ propertyMenuButton.ImageButton.SelectedImagePath = "Collection/MesCenter/SystemOn.png";
+ propertyMenuButton.ImageButton.UnSelectedImagePath = "Collection/MesCenter/System.png";
+ propertyMenuButton.TextButton.TextID = StringId.SystemMessage;
+ Action propertyAction = () =>
+ {
+ MenuButtonSelect(4);
+ };
+ propertyMenuButton.SelectAction = propertyAction;
+ #endregion
+
+ //鍏堝睆钄�
+ ////鍙硃addingView
+ //menuView.AddChidren(new Button() {
+ // Width = Application.GetRealWidth(15),
+ // BackgroundColor = CSS_Color.viewTranslucence
+ //});
}
@@ -180,7 +246,7 @@
/// <summary>
///
/// </summary>
- /// <param name="selectId">0鍏ㄩ儴 1鍒嗕韩涓庡姛鑳� 2鎶ヨ绫� 3绯荤粺淇℃伅</param>
+ /// <param name="selectId">0鍏ㄩ儴 1鍒嗕韩涓庡姛鑳� 2鎶ヨ绫� 3绯荤粺淇℃伅 4鐗╀笟閫氱煡</param>
void MenuButtonSelect(int selectId)
{
showMesType = selectId;
@@ -188,9 +254,10 @@
if (selectId == 0)
{
allMenuButton.IsSelected = true;
- shareMenuButton.IsSelected = false;
- alarmMenuButton.IsSelected = false;
- systemMenuButton.IsSelected = false;
+ shareMenuButton.IsSelected = true;
+ alarmMenuButton.IsSelected = true;
+ systemMenuButton.IsSelected = true;
+ propertyMenuButton.IsSelected = true;
}
else if (selectId == 1)
@@ -199,6 +266,7 @@
shareMenuButton.IsSelected = true;
alarmMenuButton.IsSelected = false;
systemMenuButton.IsSelected = false;
+ propertyMenuButton.IsSelected = false;
}
else if (selectId == 2)
@@ -207,6 +275,7 @@
shareMenuButton.IsSelected = false;
alarmMenuButton.IsSelected = true;
systemMenuButton.IsSelected = false;
+ propertyMenuButton.IsSelected = false;
}
else if (selectId == 3)
{
@@ -214,6 +283,16 @@
shareMenuButton.IsSelected = false;
alarmMenuButton.IsSelected = false;
systemMenuButton.IsSelected = true;
+ propertyMenuButton.IsSelected = false;
+
+ }
+ else if (selectId == 4)
+ {
+ allMenuButton.IsSelected = false;
+ shareMenuButton.IsSelected = false;
+ alarmMenuButton.IsSelected = false;
+ systemMenuButton.IsSelected = false;
+ propertyMenuButton.IsSelected = true;
}
@@ -260,21 +339,27 @@
VerticalScrolViewMiddle.AddChidren(rowView);
//鏍囬
- var btnTilte = new Button()
+ var btnTilte = new TextButton()
{
X = Application.GetRealWidth(16),
Y = Application.GetRealHeight(12),
- Width = Application.GetRealWidth(320),
- Height = Application.GetRealHeight(20),
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealWidth(20),
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
- Text = pushMessageInfo.messageTitle
+ Text = pushMessageInfo.messageContent,
+ //IsMoreLines = true,
};
rowView.AddChidren(btnTilte);
+ //
+ var needHeight = btnTilte.GetMoreLineNeedHeight();
+ btnTilte.IsMoreLines = true;
+ btnTilte.Height = needHeight;
+ rowView.Height = Application.GetRealHeight(45) + needHeight;
//鍓爣棰�
- var btnSubtitle = new Button()
+ var btnSubtitle = new TextButton()
{
X = Application.GetRealWidth(16),
Y = btnTilte.Bottom + Application.GetRealHeight(4),
@@ -283,7 +368,7 @@
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.PromptingColor1,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- Text = pushMessageInfo.messageContent
+ Text = pushMessageInfo.messageTitle
};
rowView.AddChidren(btnSubtitle);
@@ -300,7 +385,7 @@
};
rowView.AddChidren(btnDatetime);
- var lineView = new LineView(rowView.Height);
+ var lineView = new LineView(rowView.Height - Application.GetRealHeight(1));
rowView.AddChidren(lineView);
//鍒犻櫎鎸夐挳
@@ -319,12 +404,16 @@
btnDatetime.Text = GetUnixToDateTime(pushMessageInfo.createTime);
+ //2020-12-23 鍘绘帀鐐瑰嚮寮圭獥浜嬩欢
//EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
//{
+ // new Alert(pushMessageInfo.messageTitle, pushMessageInfo.messageContent, Language.StringByID(StringId.Close)).Show();
//};
-
+ //rowView.MouseUpEventHandler = eventHandler;
//btnTilte.MouseUpEventHandler = eventHandler;
//btnSubtitle.MouseUpEventHandler = eventHandler;
+
+
}
/// <summary>
@@ -401,7 +490,7 @@
};
VerticalScrolViewMiddle.AddChidren(bgView);
- var yearBtn = new Button()
+ var yearBtn = new TextButton()
{
X = Application.GetRealWidth(16),
Y = Application.GetRealHeight(16),
@@ -411,9 +500,9 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
IsBold = true,
- Text = yearStr
};
bgView.AddChidren(yearBtn);
+ yearBtn.Text = yearStr + Language.StringByID(StringId.Years);
}
/// <summary>
@@ -423,9 +512,18 @@
void GetPushMessageList(int queryType = 0)
{
bodyScrolView.RemoveAll();
- PushMessageInfoList.Clear();
+ if(PushMessageInfoList == null)
+ {
+ PushMessageInfoList = new List<PushMessageInfo>();
+ }
+ else
+ {
+ PushMessageInfoList.Clear();
+ }
+
YearMark = "";//鏍囪娓呯┖
- if (string.IsNullOrEmpty(UserInfo.Current.PushId)) {
+ if (string.IsNullOrEmpty(OnAppConfig.Instance.PushId))
+ {
AddEmptyTipView();
return;
}
@@ -441,7 +539,13 @@
var result = new HttpServerRequest().PushSerivceGetPushmessagelist(queryType);
if (result.Code == StateCode.SUCCESS)
{
- PushMessageInfoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PushMessageInfo>>(result.Data.ToString());
+ //PushMessageInfoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PushMessageInfo>>(result.Data.ToString());
+ //2021-08-28 鏀逛负鍒嗛〉鎺ュ彛
+ var mPushMesList = Newtonsoft.Json.JsonConvert.DeserializeObject<PushMessageInfoList>(result.Data.ToString());
+ if(mPushMesList != null) {
+ PushMessageInfoList = mPushMesList.list;
+ }
+
Application.RunOnMainThread(() =>
{
if (PushMessageInfoList != null && PushMessageInfoList.Count > 0)
@@ -509,7 +613,7 @@
}
}
- #region 娴嬭瘯
+#region 娴嬭瘯
#if DEBUG
/// <summary>
///
@@ -584,12 +688,13 @@
#endif
- #endregion
+#endregion
/// <summary>
/// 鏍囪鎵�鏈夋帹閫佹秷鎭凡璇�
/// </summary>
- void PushSerivceMarkAllMessageRead() {
+ void PushSerivceMarkAllMessageRead()
+ {
new Thread(() =>
{
var result = new HttpServerRequest().PushSerivceMarkAllMessageRead();
@@ -607,6 +712,41 @@
{ IsBackground = true }.Start();
}
+ /// <summary>
+ /// 娉ㄥ唽鏀跺埌鎺ㄩ�佺洃鍚�
+ /// </summary>
+ void RegisterGetPushMessageAction()
+ {
+ HDLCommon.GetPushMessageAction = () =>
+ {
+ if (bodyView != null)
+ {
+ //Utlis.WriteLine("GetPushMessageAction M鏀跺埌鎺ㄩ��");
+ GetPushMessageList(showMesType);
+ }
+ };
+ }
+
+ /// <summary>
+ /// 鍙栨秷鏀跺埌鎺ㄩ�佺洃鍚�
+ /// </summary>
+ void UnregisterGetPushMessageAction()
+ {
+ HDLCommon.GetPushMessageAction = null;
+ }
+
+#if DEBUG
+
+ /// <summary>
+ /// 澶嶅埗鍒板壀鍒囨澘
+ /// </summary>
+ /// <param name="text"></param>
+ void CopyToClipboard(string text)
+ {
+ Clipboard.SetTextAsync(text);
+ Utlis.ShowTip(text + "\n" + Language.StringByID(StringId.CopySuccess));
+ }
+#endif
}
@@ -656,4 +796,14 @@
public long createTime;
}
+
+ /// <summary>
+ // 鎺ㄩ�佹秷鎭垎椤靛璞�
+ /// </summary>
+ public class PushMessageInfoList : BasePagingObj
+ {
+ public List<PushMessageInfo> list = new List<PushMessageInfo>();
+
+ }
+
}
--
Gitblit v1.8.0