From 7167334c0e89dd84827d59e726123d14776e3a09 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 16 六月 2020 11:14:13 +0800
Subject: [PATCH] 2020-06-16-1

---
 HDL_ON/UI/UI2/UserPage.cs |  424 +++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 382 insertions(+), 42 deletions(-)

diff --git a/HDL_ON/UI/UI2/UserPage.cs b/HDL_ON/UI/UI2/UserPage.cs
index 21695fc..ecaf192 100644
--- a/HDL_ON/UI/UI2/UserPage.cs
+++ b/HDL_ON/UI/UI2/UserPage.cs
@@ -1,9 +1,10 @@
 锘縰sing System;
+using HDL_ON.Entity;
 using Shared;
 
 namespace HDL_ON.UI
 {
-    public class UserPage : FrameLayout
+    public partial class UserPage : FrameLayout
     {
 
         #region 鎺т欢鍒楄〃
@@ -18,7 +19,7 @@
         /// <summary>
         /// 瀵艰埅鏍忓尯鍩�
         /// </summary>
-        FrameLayout NavigationView;
+        FrameLayout navigationView;
         /// <summary>
         /// 瀵艰埅鏍忕偣鍑诲尯鍩�
         /// </summary>
@@ -75,40 +76,97 @@
         /// <summary>
         /// 閫変腑鍖哄煙
         /// </summary>
-        FrameLayout NavigationSelectionView;
+        FrameLayout navigationSelectionView;
+        /// <summary>
+        /// 閫変腑鍖哄煙鍥炬爣
+        /// </summary>
+        Button btnNavigationSelectionIcon;
         #endregion
         #endregion
 
-        public UserPage()
+        /// <summary>
+        /// 褰撳墠鍔ㄧ敾鏁堟灉
+        /// 0:鏀惰棌
+        /// 1:鍒嗙被
+        /// 2:鏅鸿兘
+        /// 3:涓汉
+        /// </summary>
+        int CurAnimationEffect = 0;
+
+        public void LoadPage()
         {
-            bodyView = this;
-            ContextView = new FrameLayout()
+            try
             {
-                Height = Application.GetRealHeight(618),
-            };
-            bodyView.AddChidren(ContextView);
+                bodyView = this;
+                bodyView.BackgroundColor = CSS.CSS_Color.MainBackgroundColor;
+                ContextView = new FrameLayout()
+                {
+                    Height = Application.GetRealHeight(618 + 20),
+                    BackgroundColor = CSS.CSS_Color.BackgroundColor,
+                };
+                bodyView.AddChidren(ContextView);
 
-            NavigationView = new FrameLayout()
+                navigationView = new FrameLayout()
+                {
+                    Y = Application.GetRealHeight(607),
+                    Height = Application.GetMinRealAverage(60),
+                };
+                bodyView.AddChidren(navigationView);
+                if (MainPage.Increase)
+                {
+                    //ContextView.Height = Application.GetRealHeight(618 + 20);
+                    navigationView.Y = Application.GetRealHeight(597 + 5);
+                    navigationView.Height = Application.GetRealHeight(70 - 5);
+                }
+                InitBottomView();
+
+                LoadEventList();
+
+                var homePage = new HomePage();
+                ContextView.AddChidren(homePage);
+                homePage.LoadPage();
+
+                //鍒锋柊鍔熻兘鐘舵��
+                DB_ResidenceData.residenceData.RefreshResidenceFunctionStatus();
+            }
+            catch (Exception ex)
             {
-                Y = Application.GetRealHeight(607),
-                Height = Application.GetRealHeight(60),
-            };
-            bodyView.AddChidren(NavigationView);
-
+                MainPage.Log($"UserPage error {ex.Message}");
+            }
         }
 
         /// <summary>
-        /// 閫変腑涓汉涓績
+        /// 鍒濆鍖栧簳閮ㄥ尯鍩�
         /// </summary>
-        public void ChoosePersonalCenter()
+        void InitBottomView()
         {
+            navigationSelectionView = new FrameLayout()
+            {
+                X = Application.GetRealWidth(0 - 94 * 3),
+                Y = Application.GetMinRealAverage(4),
+                Width = Application.GetRealWidth(94 * 7),
+                Height = Application.GetMinRealAverage(38),
+                BackgroundImagePath = "Navigation/UserPageNavbg.png",
+            };
+            navigationView.AddChidren(navigationSelectionView);
+
+            btnNavigationSelectionIcon = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetMinRealAverage(6),
+                Width = Application.GetMinRealAverage(22),
+                Height = Application.GetMinRealAverage(22),
+                UnSelectedImagePath = "Navigation/CollectionIconOn.png",
+            };
+            navigationSelectionView.AddChidren(btnNavigationSelectionIcon);
+
             NavigationSubView = new FrameLayout()
             {
-                Y = Application.GetRealHeight(11),
+                Y = Application.GetMinRealAverage(11),
                 Height = Application.GetRealHeight(49),
-                BackgroundColor = CSS.CSS_Color.MainBackgroundColor,
+                //BackgroundColor=0xFF00F0F0
             };
-            NavigationView.AddChidren(NavigationSubView);
+            navigationView.AddChidren(NavigationSubView);
 
             #region 鏀惰棌鍖哄煙
             collectionView = new FrameLayout() {
@@ -121,6 +179,8 @@
                 Width = Application.GetMinRealAverage(22),
                 Height = Application.GetMinRealAverage(22),
                 UnSelectedImagePath = "Navigation/CollectionIcon.png",
+                SelectedImagePath = "Public/transparent.png",
+                IsSelected = true,
             };
             collectionView.AddChidren(btnCollectionIcon);
             btnCollectionText = new Button()
@@ -131,7 +191,7 @@
                 SelectedTextColor = CSS.CSS_Color.MainColor,
                 TextColor =CSS.CSS_Color.FirstLevelTitleColor,
                 TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
-                TextID = InternationalizationString.Collection,
+                TextID = StringId.Collection,
                 TextAlignment = TextAlignment.Center,
             };
             collectionView.AddChidren(btnCollectionText);
@@ -151,6 +211,7 @@
                 Width = Application.GetMinRealAverage(22),
                 Height = Application.GetMinRealAverage(22),
                 UnSelectedImagePath = "Navigation/ClassificationIcon.png",
+                SelectedImagePath = "Public/transparent.png",
             };
             classificationView.AddChidren(btnClassificationIcon);
             btnClassificationText = new Button()
@@ -161,13 +222,13 @@
                 SelectedTextColor = CSS.CSS_Color.MainColor,
                 TextColor = CSS.CSS_Color.FirstLevelTitleColor,
                 TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
-                TextID = InternationalizationString.Classification,
+                TextID = StringId.Classification,
                 TextAlignment = TextAlignment.Center,
             };
             classificationView.AddChidren(btnClassificationText);
             #endregion
 
-            #region 鍒嗙被鍖哄煙
+            #region 鏅鸿兘鍖哄煙
             intellectualizationView = new FrameLayout()
             {
                 Width = Application.GetRealWidth(94),
@@ -181,6 +242,7 @@
                 Width = Application.GetMinRealAverage(22),
                 Height = Application.GetMinRealAverage(22),
                 UnSelectedImagePath = "Navigation/IntellectualizationIcon.png",
+                SelectedImagePath = "Public/transparent.png",
             };
             intellectualizationView.AddChidren(btnIntellectualizationIcon);
             btnIntellectualizationText = new Button()
@@ -191,7 +253,7 @@
                 TextColor = CSS.CSS_Color.FirstLevelTitleColor,
                 SelectedTextColor = CSS.CSS_Color.MainColor,
                 TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
-                TextID = InternationalizationString.Classification,
+                TextID = StringId.Intellectualization,
                 TextAlignment = TextAlignment.Center,
             };
             intellectualizationView.AddChidren(btnIntellectualizationText);
@@ -212,7 +274,7 @@
                 Width = Application.GetMinRealAverage(22),
                 Height = Application.GetMinRealAverage(22),
                 UnSelectedImagePath = "Navigation/PersonalCenterIcon.png",
-                SelectedImagePath = "Navigation/PersonalCenterIconOn.png",
+                SelectedImagePath = "Public/transparent.png",
             };
             personalCenterView.AddChidren(btnPersonalCenterIcon);
 
@@ -224,37 +286,315 @@
                 TextColor = CSS.CSS_Color.FirstLevelTitleColor,
                 SelectedTextColor = CSS.CSS_Color.MainColor,
                 TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
-                TextID = InternationalizationString.Classification,
+                TextID = StringId.Personal,
                 TextAlignment = TextAlignment.Center,
             };
             personalCenterView.AddChidren(btnPersonalCenterText);
             #endregion
 
-
-            btnPersonalCenterIcon.RemoveFromParent();
-            btnPersonalCenterText.IsSelected = true;
+            var homePage = new HomePage();
+            ContextView.AddChidren(homePage);
+            homePage.LoadPage();
+        }
 
 
-            NavigationSelectionView = new FrameLayout()
+        /// <summary>
+        /// 鍒囨崲鍒版敹钘忕晫闈�
+        /// </summary>
+        void ChooseCollection()
+        {
+            CurAnimationEffect = 0;
+            btnClassificationIcon.IsSelected = false;
+            btnIntellectualizationIcon.IsSelected = false;
+            btnPersonalCenterIcon.IsSelected = false;
+            btnCollectionText.IsSelected = false;
+            btnClassificationText.IsSelected = false;
+            btnIntellectualizationText.IsSelected = false;
+            btnPersonalCenterText.IsSelected = false;
+            #region 绉诲姩鍔ㄧ敾
+            var distance = navigationSelectionView.X - collectionView.X + Application.GetRealWidth(94*3);
+            int total = 10;
+            int sleepTime = 300;
+            if (distance > 200)
             {
-                X = personalCenterView.X,
-                Width = Application.GetRealWidth(94),
-                Height = Application.GetRealHeight(40),
-                BackgroundImagePath = "Navigation/UserPageNavbg.png",
-            };
-            NavigationView.AddChidren(NavigationSelectionView);
-            btnPersonalCenterIcon.IsSelected = true;
-            btnPersonalCenterIcon.Y = Application.GetRealHeight(6);
-
-            NavigationSelectionView.AddChidren(btnPersonalCenterIcon);
+                sleepTime = 600;
+                total = 30;
+            }
+            else if (distance > 100)
+            {
+                sleepTime = 450;
+                total = 20;
+            }
+            distance /= total;
+            new System.Threading.Thread(() => {
+                int index = 0;
+                while (index < total+1) {
+                    if (CurAnimationEffect != 0)
+                    {
+                        break;
+                    }
+                    Application.RunOnMainThread(() =>
+                    {
+                        //绉诲姩
+                        if (index < total)
+                        {
+                            navigationSelectionView.X -= distance;
+                        }
+                        else
+                        {
+                            navigationSelectionView.X = collectionView.X - Application.GetRealWidth(94 * 3);
+                            btnCollectionText.IsSelected = true;
+                            btnCollectionIcon.IsSelected = true;
+                            btnClassificationIcon.IsSelected = false;
+                            btnIntellectualizationIcon.IsSelected = false;
+                            btnPersonalCenterIcon.IsSelected = false;
+                            btnClassificationText.IsSelected = false;
+                            btnIntellectualizationText.IsSelected = false;
+                            btnPersonalCenterText.IsSelected = false;
+                        }
+                        if (index == (total/2))
+                        {
+                            btnNavigationSelectionIcon.UnSelectedImagePath = "Navigation/CollectionIconOn.png";
+                        }
+                        //鏃嬭浆
+                        btnNavigationSelectionIcon.SetRotation(-36f * index);
+                    });
+                    System.Threading.Thread.Sleep(sleepTime / total);
+                    index++;
+                }
+            }) { IsBackground = true }.Start();
+            #endregion
+            ContextView.RemoveAll();
+            var homePage = new HomePage();
+            ContextView.AddChidren(homePage);
+            homePage.LoadPage();
+        }
+        /// <summary>
+        /// 鍒囨崲鍒板垎绫荤晫闈�
+        /// </summary>
+        void ChooseClassification()
+        {
+            CurAnimationEffect = 1;
+            btnCollectionIcon.IsSelected = false;
+            btnIntellectualizationIcon.IsSelected = false;
+            btnPersonalCenterIcon.IsSelected = false;
+            btnCollectionText.IsSelected = false;
+            btnClassificationText.IsSelected = false;
+            btnIntellectualizationText.IsSelected = false;
+            btnPersonalCenterText.IsSelected = false;
+            #region 绉诲姩鍔ㄧ敾
+            var distance = navigationSelectionView.X - classificationView.X + Application.GetRealWidth(94 * 3);
+            int total = 10;
+            int sleepTime = 300;
+            if (distance > 100 || distance < -100)
+            {
+                sleepTime = 450;
+                total = 20;
+            }
+            distance /= total;
+            new System.Threading.Thread(() =>
+            {
+                int index = 0;
+                while (index < total+1)
+                {
+                    if (CurAnimationEffect != 1)
+                    {
+                        break;
+                    }
+                    Application.RunOnMainThread(() =>
+                    {
+                        //绉诲姩
+                        if (index < total)
+                        {
+                            navigationSelectionView.X -= distance;
+                        }
+                        else
+                        {
+                            navigationSelectionView.X = classificationView.X - Application.GetRealWidth(94 * 3);
+                            btnClassificationText.IsSelected = true;
+                            btnClassificationIcon.IsSelected = true;
+                            btnCollectionIcon.IsSelected = false;
+                            btnIntellectualizationIcon.IsSelected = false;
+                            btnPersonalCenterIcon.IsSelected = false;
+                            btnCollectionText.IsSelected = false;
+                            btnIntellectualizationText.IsSelected = false;
+                            btnPersonalCenterText.IsSelected = false;
+                        }
+                        if (index == (total / 2 ))
+                        {
+                            btnNavigationSelectionIcon.UnSelectedImagePath = "Navigation/ClassificationIconOn.png";
+                        }
+                        //鏃嬭浆
+                        if (distance < 0)
+                        {
+                            btnNavigationSelectionIcon.SetRotation(36f * index);
+                        }
+                        else
+                        {
+                            btnNavigationSelectionIcon.SetRotation(-36f * index);
+                        }
+                    });
+                    System.Threading.Thread.Sleep(sleepTime / total);
+                    index++;
+                }
+            })
+            { IsBackground = true }.Start();
+            #endregion
+            ContextView.RemoveAll();
+            var classificaitionView = new ClassificationPage();
+            ContextView.AddChidren(classificaitionView);
+            classificaitionView.LoadPage();
 
 
+        }
+        /// <summary>
+        /// 鍒囨崲鍒版櫤鑳界晫闈�
+        /// </summary>
+        void ChooseIntellectualization()
+        {
+            CurAnimationEffect = 2;
+            btnCollectionText.IsSelected = false;
+            btnClassificationText.IsSelected = false;
+            btnIntellectualizationText.IsSelected = false;
+            btnPersonalCenterText.IsSelected = false;
+            btnCollectionIcon.IsSelected = false;
+            btnClassificationIcon.IsSelected = false;
+            btnPersonalCenterIcon.IsSelected = false;
+            #region 绉诲姩鍔ㄧ敾
+            var distance = navigationSelectionView.X - intellectualizationView.X + Application.GetRealWidth(94 * 3);
+            int total = 10;
+            int sleepTime = 300;
+            if (distance > 100 || distance < -100)
+            {
+                sleepTime = 450;
+                total = 20;
+            }
+            distance /= total;
+            new System.Threading.Thread(() => {
+                int index = 0;
+                while (index < total+1)
+                {
+                    if(CurAnimationEffect!=2)
+                    {
+                        break;
+                    }
+                    Application.RunOnMainThread(() =>
+                    {
+                        //绉诲姩
+                        if (index < total)
+                        {
+                            navigationSelectionView.X -= distance;
+                        }
+                        else
+                        {
+                            navigationSelectionView.X = intellectualizationView.X - Application.GetRealWidth(94 * 3);
+                            btnIntellectualizationText.IsSelected = true;
+                            btnIntellectualizationIcon.IsSelected = true;
+                            btnCollectionText.IsSelected = false;
+                            btnClassificationText.IsSelected = false;
+                            btnPersonalCenterText.IsSelected = false;
+                            btnCollectionIcon.IsSelected = false;
+                            btnClassificationIcon.IsSelected = false;
+                            btnPersonalCenterIcon.IsSelected = false;
+                        }
+                        if (index == (total / 2 ))
+                        {
+                            btnNavigationSelectionIcon.UnSelectedImagePath = "Navigation/IntellectualizationIconOn.png";
+                        }
+                        //鏃嬭浆
+                        if (distance < 0)
+                        {
+                            btnNavigationSelectionIcon.SetRotation(36f * index);
+                        }
+                        else
+                        {
+                            btnNavigationSelectionIcon.SetRotation(-36f * index);
+                        }
+                    });
+                    System.Threading.Thread.Sleep(sleepTime / total);
+                    index++;
+                }
+            })
+            { IsBackground = true }.Start();
+            #endregion
+            ContextView.RemoveAll();
+        }
 
-            var personalCenterPage = new UI2.PersonalCenterPage();
+        /// <summary>
+        /// 鍒囨崲鍒颁釜浜轰腑蹇冪晫闈�
+        /// </summary>
+        void ChoosePersonalCenter()
+        {
+            CurAnimationEffect = 3;
+            btnCollectionText.IsSelected = false;
+            btnClassificationText.IsSelected = false;
+            btnIntellectualizationText.IsSelected = false;
+            btnPersonalCenterText.IsSelected = false;
+            btnCollectionIcon.IsSelected = false;
+            btnClassificationIcon.IsSelected = false;
+            btnIntellectualizationIcon.IsSelected = false;
+            #region 绉诲姩鍔ㄧ敾
+            var distance = navigationSelectionView.X - personalCenterView.X + Application.GetRealWidth(94 * 3);
+            int total = 10;
+            int sleepTime = 300;
+            if (distance < -200)
+            {
+                sleepTime = 600;
+                total = 30;
+            }
+            else if (distance < -100)
+            {
+                sleepTime = 450;
+                total = 20;
+            }
+            distance /= total;
+            new System.Threading.Thread(() => {
+                int index = 0;
+                while (index < total+1)
+                {
+                    if (CurAnimationEffect != 3)
+                    {
+                        break;
+                    }
+                    Application.RunOnMainThread(() =>
+                    {
+                        //绉诲姩
+                        if (index < total)
+                        {
+                            navigationSelectionView.X -= distance;
+                        }
+                        else
+                        {
+                            navigationSelectionView.X = personalCenterView.X - Application.GetRealWidth(94 * 3);
+                            btnPersonalCenterText.IsSelected = true;
+                            btnPersonalCenterIcon.IsSelected = true;
+                            btnCollectionText.IsSelected = false;
+                            btnClassificationText.IsSelected = false;
+                            btnIntellectualizationText.IsSelected = false;
+                            btnCollectionIcon.IsSelected = false;
+                            btnClassificationIcon.IsSelected = false;
+                            btnIntellectualizationIcon.IsSelected = false;
+                        }
+                        if (index == (total / 2 ))
+                        {
+                            btnNavigationSelectionIcon.UnSelectedImagePath = "Navigation/PersonalCenterIconOn.png";
+                        }
+                        //鏃嬭浆
+                        btnNavigationSelectionIcon.SetRotation(36f * index);
+                    });
+                    System.Threading.Thread.Sleep(sleepTime / total);
+                    index++;
+                }
+            })
+            { IsBackground = true }.Start();
+            #endregion
+
+
+            ContextView.RemoveAll();
+            var personalCenterPage = new UI.PersonalCenterPage();
             ContextView.AddChidren(personalCenterPage);
             personalCenterPage.LoadView();
         }
-
 
     }
 }

--
Gitblit v1.8.0