From f0159007be3597161647bffdd48f2426d47ca1c4 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 24 十二月 2020 21:33:08 +0800
Subject: [PATCH] 主页下拉刷行
---
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 183 ++++++++++++++++++++++++++++++++++-----------
1 files changed, 137 insertions(+), 46 deletions(-)
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index b6c33ea..11ce16c 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -11,11 +11,13 @@
namespace HDL_ON.UI
{
- public partial class HomePage : FrameLayout
+ public partial class HomePage : VerticalRefreshLayout
{
#region 鎺т欢鍒楄〃
static HomePage bodyView;
+
+ //FrameLayout bodyView;
/// <summary>
/// 椤堕儴淇℃伅鍖哄煙
/// </summary>
@@ -92,6 +94,15 @@
{
bodyView = this;
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+
+ this.VerticalScrollBarEnabled = false;
+#if __IOS__
+ //鑷姩鍋忕Щ鍙栨秷
+ if (UIKit.UIDevice.CurrentDevice.CheckSystemVersion(11, 0))
+ {
+ (this.uiView as UIKit.UIScrollView).ContentInsetAdjustmentBehavior = UIKit.UIScrollViewContentInsetAdjustmentBehavior.Never;
+ }
+#endif
}
public override void RemoveFromParent()
@@ -104,7 +115,16 @@
{
try
{
+ this.BeginHeaderRefreshingAction = () =>
+ {
+ this.EndHeaderRefreshing();
+ Common.ApiUtlis.Ins.DownloadData();
+ };
+
#region topView
+
+ bodyView.RemoveAll();
+
topView = new FrameLayout()
{
Height = Application.GetRealHeight(216),
@@ -129,27 +149,15 @@
Radius = (uint)Application.GetRealWidth(3),
};
topView.AddChidren(btnLinkStateTip);
- if (Control.Ins.GatewayOnline)
- {
- if (Control.Ins.IsRemote)
- {
- bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipRemote;
- }
- else
- {
- bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor;
- }
- }
- else
- {
- bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipFail;
- }
+ //鏇存柊閾炬帴鐘舵�乮con棰滆壊
+ CheckLinkStatus();//2020-12-22
+ //LoadEvent_CheckLinkStatus();
btnResidenceName = new Button()
{
X = Application.GetRealWidth(26),
Y = Application.GetRealHeight(32),
- Width = Application.GetRealWidth(400),
+ Width = Application.GetRealWidth(300),
Height = Application.GetRealHeight(33),
TextColor = CSS_Color.MainBackgroundColor,
TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
@@ -166,7 +174,7 @@
System.Threading.Tasks.Task.Run(() =>
{
//DriverLayer.Control.Ins.SearchLoaclGateway();
- MainPage.InitializationData();
+ //MainPage.InitializationData();
//DriverLayer.Control.Ins.IsRemote = true;
});
};
@@ -264,7 +272,7 @@
};
msgView.AddChidren(btnMsgBg);
-
+
btnMsgIcon = new Button()
{
X = Application.GetRealWidth(12),
@@ -276,7 +284,7 @@
};
msgView.AddChidren(btnMsgIcon);
-
+
btnMsg = new Button()
{
X = Application.GetRealWidth(10) + btnMsgIcon.Right,
@@ -288,7 +296,7 @@
};
msgView.AddChidren(btnMsg);
-
+
btnMsgTime = new Button()
{
X = Application.GetRealWidth(299),
@@ -355,39 +363,75 @@
#region ContextView
contentView = new PageLayout()
{
- Y = changeView.Bottom ,
+ Y = changeView.Bottom,
Height = Application.GetRealHeight(310 + 30 + 10), //20涓鸿秴鍑洪儴鍒�
};
bodyView.AddChidren(contentView);
functionViews = new List<FrameLayout>();
- deviceFunctionView = new VerticalScrolViewLayout();
- contentView.AddChidren(deviceFunctionView);
- LoadDeviceFunctionControlZone();
- sceneFunctionView = new VerticalScrolViewLayout();
- contentView.AddChidren(sceneFunctionView);
- LoadSceneFunctionControlZone();
- contentView.PageIndex = 0;
+ if (!Common.ApiUtlis.Ins.DownloadDataComplete)
+ {
+ var waitPage = new Loading();
+ MainPage.BaseView.AddChidren(waitPage);
+ waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+ new System.Threading.Thread(() =>
+ {
+ while (!Common.ApiUtlis.Ins.DownloadDataComplete)
+ {
+ System.Threading.Thread.Sleep(400);
+ }
+ Application.RunOnMainThread(() =>
+ {
+
+ deviceFunctionView = new VerticalScrolViewLayout();
+ contentView.AddChidren(deviceFunctionView);
+ LoadDeviceFunctionControlZone();
+ sceneFunctionView = new VerticalScrolViewLayout();
+ contentView.AddChidren(sceneFunctionView);
+ LoadSceneFunctionControlZone();
+ contentView.PageIndex = 0;
+
+
+ LoadEvent_ChangeShowedFunctionType();
+
+ // 鏌ヨ鏈娑堟伅骞舵樉绀�
+ GetUnreadPushMessages();
+ RegisterGetPushMessageAction();
+
+ waitPage.Hide();
+ });
+ })
+ { IsBackground = true }.Start();
+ }
+ else
+ {
+
+ deviceFunctionView = new VerticalScrolViewLayout();
+ contentView.AddChidren(deviceFunctionView);
+ LoadDeviceFunctionControlZone();
+ sceneFunctionView = new VerticalScrolViewLayout();
+ contentView.AddChidren(sceneFunctionView);
+ LoadSceneFunctionControlZone();
+ contentView.PageIndex = 0;
+
+
+ LoadEvent_ChangeShowedFunctionType();
+
+ // 鏌ヨ鏈娑堟伅骞舵樉绀�
+ GetUnreadPushMessages();
+ RegisterGetPushMessageAction();
+
+ }
#endregion
-
- LoadEvent_ChangeShowedFunctionType();
-
- // 鏌ヨ鏈娑堟伅骞舵樉绀�
- GetUnreadPushMessages();
- RegisterGetPushMessageAction();
}
catch (Exception ex)
{
MainPage.Log($"HomePage LoadPage Error : {ex.Message}");
}
-
- System.Threading.Tasks.Task.Run(() =>
- {
- //DriverLayer.Control.Ins.SearchLoaclGateway();
- });
}
/// <summary>
@@ -395,6 +439,7 @@
/// </summary>
void LoadDeviceFunctionControlZone()
{
+
#region ContextView
deviceFunctionView.RemoveAll();
functionViews.Clear();
@@ -663,7 +708,13 @@
SelectedImagePath = "Collection/CollectionWhiteIcon.png",
UnSelectedImagePath = "Collection/CollectionIcon.png",
};
- view.AddChidren(btnCollection);
+ //view.AddChidren(btnCollection);
+ //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳�
+ if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
+ {
+ view.AddChidren(btnCollection);
+ }
+
LoadEvent_FunctionCollection(btnCollection, function);
if (function.functionCategory == FunctionCategory.Curtain)
@@ -816,7 +867,23 @@
}
LoadEvent_SwitchFunction(function, btnSwitch);
}
- var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, new Button(), new Button(), new Button());
+ //鍙栨秷鏀惰棌浜嬩欢
+ Action cannelCollect = () => {
+ function.collect = false;
+ if (function.functionCategory == FunctionCategory.Music)//澶勭悊闊充箰涓讳粠鍏崇郴
+ {
+ if ((function as Music.A31MusicModel).ServerClientType == 1)
+ {
+ (function as Music.A31MusicModel).MainPlayCollection = false;
+ Music.A31MusicModel.Save();
+ }
+ }
+ string msg = function.name + Language.StringByID(StringId.CollectionCancelled);
+ LoadDeviceFunctionControlZone();
+ function.CollectFunction();
+ };
+
+ var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone);
view.MouseUpEventHandler = skipControlPageEvent;
btnName.MouseUpEventHandler = skipControlPageEvent;
btnIcon.MouseUpEventHandler = skipControlPageEvent;
@@ -846,6 +913,19 @@
};
view.AddChidren(btnCoverd);
+ Button btnShowDelay;
+ btnShowDelay = new Button()
+ {
+ X = Application.GetRealWidth(40),
+ Y = Application.GetRealWidth(4),
+ Height = Application.GetRealWidth(32),
+ Width = Application.GetRealWidth(100),
+ TextColor = CSS_Color.AuxiliaryColor1,
+ TextAlignment = TextAlignment.CenterLeft,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ view.AddChidren(btnShowDelay);
+
Button btnSettingIcon;
btnSettingIcon = new Button()
{
@@ -855,7 +935,10 @@
Width = Application.GetRealWidth(32),
UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png",
};
- view.AddChidren(btnSettingIcon);
+ if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
+ {
+ view.AddChidren(btnSettingIcon);
+ }
Button btnName;
btnName = new Button()
@@ -897,10 +980,16 @@
SelectedImagePath = "Collection/CollectionWhiteIcon.png",
UnSelectedImagePath = "Collection/CollectionIcon.png",
};
- view.AddChidren(btnCollection);
+ //view.AddChidren(btnCollection);
+ //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳�
+ if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
+ {
+ view.AddChidren(btnCollection);
+ }
+
LoadEvent_SceneCollection(btnCollection, scene);
-
- LoadEvent_ControlScene(btnCoverd,btnName,btnZone, scene);
+
+ LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene);
btnSettingIcon.MouseUpEventHandler = (sender, e) => {
Action backAction = () => {
@@ -918,6 +1007,8 @@
aep.LoadPage( refreshAction);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
+ //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑
+ scene.SceneCountDown(btnShowDelay);
}
catch (Exception ex)
{
--
Gitblit v1.8.0