1 using System.Collections.Generic;
2 using Tizen.NUI.BaseComponents;
3 using Tizen.NUI.Components;
5 namespace Tizen.NUI.Samples
7 public class ButtonSample : IExample
9 private static readonly int XBase = 100;
10 private static readonly int YBase = 300;
11 private static readonly int XPadding = 350;
16 Button iconTextButton;
18 Button utilityBasicButton;
19 Button utilityServiceButton;
20 Button utilityToggleButton;
21 Button utilityOvalButton;
23 Button familyBasicButton;
24 Button familyServiceButton;
25 Button familyToggleButton;
26 Button familyOvalButton;
28 public void Activate()
30 Window window = Window.Instance;
32 //ImageView imageView1 = new ImageView();
33 //imageView1.Size2D = new Size2D(48, 48);
34 //imageView1.Position2D = new Position2D(200, 200);
35 //imageView1.ResourceUrl = CommonResource.GetFHResourcePath() + "9. Controller/controller_btn_check.png";
36 //window.Add(imageView1);
38 //ImageView imageView2 = new ImageView();
39 //imageView2.Size2D = new Size2D(48, 48);
40 //imageView2.Position2D = new Position2D(500, 200);
41 //imageView2.ResourceUrl = CommonResource.GetFHResourcePath() + "9. Controller/[Controller] App Primary Color/controller_btn_check_on_24c447.png";
42 //window.Add(imageView2);
46 Size2D = new Size2D(1920, 1080),
49 window.KeyEvent += Window_KeyEvent;
51 textButton = new Button();
52 textButton.Style.BackgroundImage = CommonResource.GetTVResourcePath() + "component/c_buttonbasic/c_basic_button_white_bg_normal_9patch.png";
53 textButton.Style.BackgroundImageBorder = new Rectangle(4, 4, 5, 5);
54 textButton.Size2D = new Size2D(300, 80);
55 textButton.Position2D = new Position2D(100, 100);
56 textButton.Style.Text.Text = "Button";
59 iconButton = new Button();
60 iconButton.Style.BackgroundImage = CommonResource.GetTVResourcePath() + "component/c_buttonbasic/c_basic_button_white_bg_normal_9patch.png";
61 iconButton.Style.BackgroundImageBorder = new Rectangle(4, 4, 5, 5);
62 iconButton.Size2D = new Size2D(100, 100);
63 iconButton.Position2D = new Position2D(600, 100);
64 iconButton.Style.Icon.ResourceUrl = CommonResource.GetTVResourcePath() + "component/c_radiobutton/c_radiobutton_white_check.png";
67 iconTextButton = new Button();
68 iconTextButton.Style.BackgroundImage = CommonResource.GetTVResourcePath() + "component/c_buttonbasic/c_basic_button_white_bg_normal_9patch.png";
69 iconTextButton.Style.BackgroundImageBorder = new Rectangle(4, 4, 5, 5);
70 iconTextButton.IconRelativeOrientation = Button.IconOrientation.Left;
71 iconTextButton.Style.Icon.ResourceUrl = CommonResource.GetTVResourcePath() + "component/c_radiobutton/c_radiobutton_white_check.png";
72 iconTextButton.Style.IconPadding.Top = 20;
73 iconTextButton.Style.IconPadding.Bottom = 20;
74 iconTextButton.Style.IconPadding.Start = 20;
75 iconTextButton.Style.IconPadding.End = 20;
76 iconTextButton.Style.Text.Text = "IconTextButton";
77 iconTextButton.Style.TextPadding.Top = 20;
78 iconTextButton.Style.TextPadding.Bottom = 20;
79 iconTextButton.Style.TextPadding.Start = 20;
80 iconTextButton.Style.TextPadding.End = 50;
81 iconTextButton.Size2D = new Size2D(500, 300);
82 iconTextButton.Position2D = new Position2D(900, 100);
83 root.Add(iconTextButton);
85 ///////////////////////////////////////////////Create by Property//////////////////////////////////////////////////////////
86 utilityBasicButton = new Button();
87 utilityBasicButton.IsSelectable = true;
88 utilityBasicButton.Style.BackgroundImage = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_normal.png";
89 utilityBasicButton.Style.BackgroundImageBorder = new Rectangle(5, 5, 5, 5);
90 utilityBasicButton.Style.Shadow.ResourceUrl = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png";
91 utilityBasicButton.Style.Shadow.Border = new Rectangle(5, 5, 5, 5);
92 utilityBasicButton.Style.Overlay.ResourceUrl = new Selector<string>
94 Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png",
97 utilityBasicButton.Style.Overlay.Border = new Rectangle(5, 5, 5, 5);
99 utilityBasicButton.Style.Text.TextColor = new Selector<Color>
101 Normal = new Color(0, 0, 0, 1),
102 Pressed = new Color(0, 0, 0, 0.7f),
103 Selected = new Color(0.058f, 0.631f, 0.92f, 1),
104 Disabled = new Color(0, 0, 0, 0.4f)
107 utilityBasicButton.Size2D = new Size2D(300, 80);
108 utilityBasicButton.Position2D = new Position2D(XBase, 300);
109 utilityBasicButton.Style.Text.PointSize = 20;
110 utilityBasicButton.Style.Text.Text = "UtilityBasicButton";
111 utilityBasicButton.IsEnabled = false;
112 root.Add(utilityBasicButton);
114 /////////////////////////////////////////////////////////////////////////////////////////////////////////
115 utilityServiceButton = new Button();
116 utilityServiceButton.Style.BackgroundImage = CommonResource.GetFHResourcePath() + "3. Button/rectangle_point_btn_normal.png";
117 utilityServiceButton.Style.BackgroundImageBorder = new Rectangle(5, 5, 5, 5);
118 utilityServiceButton.Style.Shadow.ResourceUrl = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png";
119 utilityServiceButton.Style.Shadow.Border = new Rectangle(5, 5, 5, 5);
120 utilityServiceButton.Style.Overlay.ResourceUrl = new Selector<string>
122 Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png",
125 utilityServiceButton.Style.Overlay.Border = new Rectangle(5, 5, 5, 5);
126 utilityServiceButton.Style.Text.TextColor = new Selector<Color>
128 Normal = new Color(1, 1, 1, 1),
129 Pressed = new Color(1, 1, 1, 0.7f),
130 Disabled = new Color(1, 1, 1, 0.4f)
133 utilityServiceButton.Size2D = new Size2D(300, 80);
134 utilityServiceButton.Position2D = new Position2D(XBase, 500);
135 utilityServiceButton.Style.Text.PointSize = 20;
136 utilityServiceButton.Style.Text.Text = "ServiceBasicButton";
137 root.Add(utilityServiceButton);
138 /////////////////////////////////////////////////////////////////////////////////////////////////////////
139 utilityToggleButton = new Button();
140 utilityToggleButton.IsSelectable = true;
141 utilityToggleButton.Style.BackgroundImage = new Selector<string>
143 Normal = CommonResource.GetFHResourcePath() + "3. Button/rectangle_toggle_btn_normal.png",
144 Selected = CommonResource.GetFHResourcePath() + "3. Button/rectangle_point_btn_normal.png",
147 utilityToggleButton.Style.BackgroundImageBorder = new Rectangle(5, 5, 5, 5);
148 utilityToggleButton.Style.Shadow.ResourceUrl = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png";
149 utilityToggleButton.Style.Shadow.Border = new Rectangle(5, 5, 5, 5);
150 utilityToggleButton.Style.Overlay.ResourceUrl = new Selector<string>
152 Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png",
155 utilityToggleButton.Style.Overlay.Border = new Rectangle(5, 5, 5, 5);
158 utilityToggleButton.Style.Text.TextColor = new Selector<Color>
160 Normal = new Color(0.058f, 0.631f, 0.92f, 1),
161 Selected = new Color(1, 1, 1, 1),
164 utilityToggleButton.Size2D = new Size2D(300, 80);
165 utilityToggleButton.Position2D = new Position2D(XBase, 700);
166 utilityToggleButton.Style.Text.PointSize = 20;
167 utilityToggleButton.Style.Text.Text = new Selector<string>
169 Normal = "Toggle Off",
170 Selected = "Toggle On"
172 root.Add(utilityToggleButton);
173 /////////////////////////////////////////////////////////////////////////////////////////////////////////
174 utilityOvalButton = new Button();
175 utilityOvalButton.IsSelectable = true;
176 utilityOvalButton.Style.BackgroundImage = new Selector<string>
178 Normal = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_normal.png",
179 Selected = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_select.png",
181 utilityOvalButton.Style.BackgroundImageBorder = new Rectangle(5, 5, 5, 5);
182 utilityOvalButton.Style.Shadow.ResourceUrl = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_shadow.png";
183 utilityOvalButton.Style.Shadow.Border = new Rectangle(5, 5, 5, 5);
184 utilityOvalButton.Style.Overlay.ResourceUrl = new Selector<string>
186 Pressed = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_press_overlay.png",
189 utilityOvalButton.Style.Overlay.Border = new Rectangle(5, 5, 5, 5);
191 utilityOvalButton.Size2D = new Size2D(104, 104);
192 utilityOvalButton.Position2D = new Position2D(XBase, 900);
193 utilityOvalButton.Style.Text.PointSize = 20;
194 root.Add(utilityOvalButton);
196 ///////////////////////////////////////////////Create by Attributes//////////////////////////////////////////////////////////
197 ButtonStyle familyBasicButtonAttributes = new ButtonStyle
200 BackgroundImage = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_normal.png" },
201 BackgroundImageBorder = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
202 Shadow = new ImageViewStyle
204 ResourceUrl = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png" },
205 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) }
208 Overlay = new ImageViewStyle
210 ResourceUrl = new Selector<string> { Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png", Other = "" },
211 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
214 Text = new TextLabelStyle
216 PointSize = new Selector<float?> { All = 20 },
217 HorizontalAlignment = HorizontalAlignment.Center,
218 VerticalAlignment = VerticalAlignment.Center,
219 WidthResizePolicy = ResizePolicyType.FillToParent,
220 HeightResizePolicy = ResizePolicyType.FillToParent,
222 TextColor = new Selector<Color>
224 Normal = new Color(0, 0, 0, 1),
225 Pressed = new Color(0, 0, 0, 0.7f),
226 Selected = new Color(0.141f, 0.769f, 0.278f, 1),
227 Disabled = new Color(0, 0, 0, 0.4f),
231 familyBasicButton = new Button(familyBasicButtonAttributes);
232 familyBasicButton.Size2D = new Size2D(300, 80);
233 familyBasicButton.Position2D = new Position2D(XBase + XPadding, 300);
234 familyBasicButton.Style.Text.PointSize = 20;
235 familyBasicButton.Style.Text.Text = "FamilyBasicButton";
236 root.Add(familyBasicButton);
238 //////////////////////////////////////////////////////////////////////////////////////////////////
239 ButtonStyle familyServiceButtonAttributes = new ButtonStyle
241 IsSelectable = false,
242 BackgroundImage = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/[Button] App Primary Color/rectangle_point_btn_normal_24c447.png" },
243 BackgroundImageBorder = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
245 Shadow = new ImageViewStyle
247 ResourceUrl = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png" },
248 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) }
251 Overlay = new ImageViewStyle
253 ResourceUrl = new Selector<string> { Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png", Other = "" },
254 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
257 Text = new TextLabelStyle
259 PointSize = new Selector<float?> { All = 20 },
260 HorizontalAlignment = HorizontalAlignment.Center,
261 VerticalAlignment = VerticalAlignment.Center,
262 WidthResizePolicy = ResizePolicyType.FillToParent,
263 HeightResizePolicy = ResizePolicyType.FillToParent,
265 TextColor = new Selector<Color>
267 Normal = new Color(1, 1, 1, 1),
268 Pressed = new Color(1, 1, 1, 0.7f),
269 Disabled = new Color(1, 1, 1, 0.4f),
273 familyServiceButton = new Button(familyServiceButtonAttributes);
274 familyServiceButton.Size2D = new Size2D(300, 80);
275 familyServiceButton.Position2D = new Position2D(XBase + XPadding, 500);
276 familyServiceButton.Style.Text.PointSize = 20;
277 familyServiceButton.Style.Text.Text = "FamilySeviceButton";
278 root.Add(familyServiceButton);
279 //////////////////////////////////////////////////////////////////////////////////////////////////
280 ButtonStyle familyToggleButtonAttributes = new ButtonStyle
283 BackgroundImage = new Selector<string>
285 Normal = CommonResource.GetFHResourcePath() + "3. Button/[Button] App Primary Color/rectangle_toggle_btn_normal_24c447.png",
286 Selected = CommonResource.GetFHResourcePath() + "3. Button/[Button] App Primary Color/rectangle_point_btn_normal_24c447.png",
288 BackgroundImageBorder = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
290 Shadow = new ImageViewStyle
292 ResourceUrl = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_shadow.png" },
293 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) }
296 Overlay = new ImageViewStyle
298 ResourceUrl = new Selector<string> { Pressed = CommonResource.GetFHResourcePath() + "3. Button/rectangle_btn_press_overlay.png", Other = "" },
299 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
302 Text = new TextLabelStyle
304 PointSize = new Selector<float?> { All = 20 },
305 HorizontalAlignment = HorizontalAlignment.Center,
306 VerticalAlignment = VerticalAlignment.Center,
307 WidthResizePolicy = ResizePolicyType.FillToParent,
308 HeightResizePolicy = ResizePolicyType.FillToParent,
310 TextColor = new Selector<Color>
312 Normal = new Color(0.141f, 0.769f, 0.278f, 1),
313 Selected = new Color(1, 1, 1, 1),
317 familyToggleButton = new Button(familyToggleButtonAttributes);
318 familyToggleButton.Size2D = new Size2D(300, 80);
319 familyToggleButton.Position2D = new Position2D(XBase + XPadding, 700);
320 familyToggleButton.Style.Text.PointSize = 20;
321 familyToggleButton.Style.Text.Text = new Selector<string>
323 Normal = "Toggle Off",
324 Selected = "Toggle On"
326 root.Add(familyToggleButton);
327 //////////////////////////////////////////////////////////////////////////////////////////////////
328 ButtonStyle familyOvalButtonAttributes = new ButtonStyle
331 BackgroundImage = new Selector<string>
333 Normal = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_normal.png",
334 Selected = CommonResource.GetFHResourcePath() + "3. Button/[Button] App Primary Color/oval_toggle_btn_select_24c447.png",
336 BackgroundImageBorder = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
338 Shadow = new ImageViewStyle
340 ResourceUrl = new Selector<string> { All = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_shadow.png" },
341 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) }
344 Overlay = new ImageViewStyle
346 ResourceUrl = new Selector<string> { Pressed = CommonResource.GetFHResourcePath() + "3. Button/oval_toggle_btn_press_overlay.png", Other = "" },
347 Border = new Selector<Rectangle> { All = new Rectangle(5, 5, 5, 5) },
350 familyOvalButton = new Button(familyOvalButtonAttributes);
351 familyOvalButton.Size2D = new Size2D(104, 104);
352 familyOvalButton.Position2D = new Position2D(XBase + XPadding, 900);
353 familyOvalButton.Style.Text.PointSize = 20;
354 root.Add(familyOvalButton);
357 private void Window_KeyEvent(object sender, Window.KeyEventArgs e)
359 if(e.Key.State == Key.StateType.Up)
361 switch(e.Key.KeyPressedName)
364 iconTextButton.IconRelativeOrientation = Button.IconOrientation.Right;
367 iconTextButton.IconRelativeOrientation = Button.IconOrientation.Top;
370 iconTextButton.IconRelativeOrientation = Button.IconOrientation.Bottom;
373 iconTextButton.IconRelativeOrientation = Button.IconOrientation.Left;
376 iconTextButton.Style.Icon.Padding.Start = 50;
379 iconTextButton.Style.Icon.Padding.End = 50;
382 iconTextButton.LayoutDirection = ViewLayoutDirectionType.RTL;
385 iconTextButton.LayoutDirection = ViewLayoutDirectionType.LTR;
391 public void Deactivate()
395 Window.Instance.Remove(root);