黄学彪
2019-12-20 23fb45dd846ed8b62304c408c6bbe64265d4ac8b
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
using System;
using Shared.Common;
 
namespace Shared.Phone.Device.CommonForm
{
    public class FunctionIconButton : FrameLayout
    {
 
        /// <summary>
        /// Image
        /// </summary>
        public Button ImageBtn;
        /// <summary>
        /// ImageBG
        /// </summary>
        public Button ImageBG;
        /// <summary>
        /// v_Selected
        /// </summary>
        private bool v_Selected;
        /// <summary>
        /// IsSelected
        /// </summary>
        public bool IsSelected
        {
            set
            {
                try
                {
                    v_Selected = value;
                    SetStatu(v_Selected);
                }
                catch { };
            }
            get
            {
                return v_Selected;
            }
        }
 
        /// <summary>
        /// FunctionIconButton
        /// </summary>
        /// <param name="x"></param>
        /// <param name="y"></param>
        public FunctionIconButton(int x = 0, int y = 0)
        {
            X = Application.GetRealWidth(x);
            Y = Application.GetRealHeight(y);
            Width = Application.GetRealWidth(207);
            Height = Application.GetRealHeight(207);
        }
 
        /// <summary>
        /// Init
        /// </summary>
        /// <param name="imagePath"></param>
        /// <param name="selectedImagePath"></param>
        public void Init(string imagePath, string selectedImagePath)
        {
            ImageBG = new Button()
            {
                Width = Application.GetRealWidth(207),
                Height = Application.GetRealWidth(207),
                Gravity = Gravity.Center,
                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                SelectedBackgroundColor = ZigbeeColor.Current.GXCSelectedBackgroundColor,
                Radius = (uint)Application.GetRealWidth(207 / 2)
            };
            AddChidren(ImageBG);
 
            ImageBtn = new Button()
            {
                Width = Application.GetMinRealAverage(114),
                Height = Application.GetMinRealAverage(114),
                Gravity = Gravity.Center,
                UnSelectedImagePath = imagePath,
                SelectedImagePath = selectedImagePath,
            };
            AddChidren(ImageBtn);
        }
 
        /// <summary>
        /// SetStatu
        /// </summary>
        /// <param name="statu"></param>
        public void SetStatu(bool statu)
        {
            ImageBG.IsSelected = ImageBtn.IsSelected = statu;
        }
    }
}