mac
2023-10-18 5bd5cdbae1d22b5e14e6933b807ed97b89807b6f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
using System;
using Shared;
namespace HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView
{
    public class BaseFramLayout : FrameLayout
    {
        public BaseFramLayout()
        {
        }
        /// <summary>
        /// 是否可以点击
        /// </summary>
        private bool mIsClick = true;
 
        /// <summary>
        /// 设置控制点击事件
        /// </summary>
        /// <param name="isClick">false点击无效</param>
        public void SetClick(bool isClick)
        {
            this.mIsClick = isClick;
        }
        /// <summary>
        /// 设置控制点击事件
        /// </summary>
        /// <param name="isClick">false点击无效</param>
        public bool GetClick()
        {
           return this.mIsClick;
        }
 
        /// <summary>
        /// 延时时间ms
        /// </summary>
        private const int millisecondsTimeout = 100;
 
        /// <summary>
        /// 调整真实高度
        /// </summary>
        /// <param name="bottomSpace">底部高度(非真实值)</param>
        public void AdjustRealHeight(int bottomSpace = 0)
        {
            int bottomHeight = -1;
 
            for (int i = 0; i < this.ChildrenCount; i++)
            {
                var child = this.GetChildren(i);
                if (child.Bottom > bottomHeight)
                {
                    bottomHeight = child.Bottom;
                }
            }
            if (bottomHeight != -1)
            {
                this.Height = bottomHeight + Application.GetRealHeight(bottomSpace);
            }
        }
 
        /// <summary>
        /// 获取坐标底部最下面的那个控件的底部坐标
        /// </summary>
        /// <returns></returns>
        public int GetLocationMostLastViewBottom()
        {
            int bottomHeight = -1;
 
            for (int i = 0; i < this.ChildrenCount; i++)
            {
                var child = this.GetChildren(i);
                if (child.Bottom > bottomHeight)
                {
                    bottomHeight = child.Bottom;
                }
            }
            return bottomHeight;
        }
        /// <summary>
        /// 设置高亮颜色
        /// </summary>
        /// <param name="view">组件</param>
        public void SetHighlightBackground(View view)
        {
            if (view == null)
            {
                return;
            }
            //按下去改变背景颜色
            view.BackgroundColor = AksCommonMethod.seleBackgroundColor;
            new System.Threading.Thread(() =>
            {
                System.Threading.Thread.Sleep(millisecondsTimeout);
                Application.RunOnMainThread(() =>
                {
                    //弹起来还原背景颜色
                    view.BackgroundColor = 0x00000000;
                });
            })
            { IsBackground = true }.Start();
 
        }
 
        /// <summary>
        /// 设置Button专用
        /// </summary>
        /// <param name="button">组件</param>
        public void SetButtonIsSelected(Button button)
        {
            if (button == null)
            {
                return;
            }
            //按下去改变背景颜色
            button.IsSelected =true;
            new System.Threading.Thread(() =>
            {
                System.Threading.Thread.Sleep(millisecondsTimeout);
                Application.RunOnMainThread(() =>
                {
                    //弹起来还原背景颜色
                    button.IsSelected=false;
                });
            })
            { IsBackground = true }.Start();
 
        }
 
     
 
 
 
 
 
    }
 
 
}