HBox Methods
HBox widget has the following methods associated with it:
add
This method is used to add widgets to the box container. When the widgets are added to the current visible form, then the changes will reflect immediately. Adding a widget to the Box hierarchy, which is already a part of the other widget hierarchy, will lead to undefined behaviors. You have to explicitly remove the widget from one hierarchy before adding it to another Box.
Syntax
add ()
Parameters
None
Return Values
None
Exceptions
WidgetError
Example
//Defining the properties for a Box properties. var basicConfBox = {id:"boxAddMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxAddMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Adding label. button, box, label, and button widgets should be created already and accessible as well. boxAddMethodTest.add(lbl,btn);
Platform Availability
Available on all platforms
addAt
This method is used to add widgets to the Box container at the specified index. Widget is prepended if index <0 and appended at the end of the container if the index > size+1. Size is the number of widgets already present in the container. If a new widget is added or removed will reflect immediately from the Box hierarchy model perspective, however the changes are displayed when the Form appears. When the widgets are added to the current visible form, then the changes will reflect immediately. Adding a widget to the Form or Box hierarchy, which is already a part of the other widget hierarchy, will lead to undefined behaviors. You have to explicitly remove the widget from one hierarchy before adding it to another Form or Box.
Syntax
addAt (widgetref, index, animationConfig)
NOTE: The parameter animationConfig is supported only on iOS (version 5.0 and above) and android (version 3.0 and above) platforms.
Parameters
widgetref - Mandatory
Reference of the widget to be added
index [Number] - Mandatory
Index number at which the widget is to be added.
animationConfig [JSObject] - Optional
Specifies the animation configuration object. Following are the parameters of the JSObject:
NOTE: A non dictionary object or passing a null to animationConfig is ignored and will be treated as widget without any animation. Passing an empty dictionary will make the API assume the defaults for each of the supported key in the animation configuration.
animEffect - Optional
Specifies the animation effect. Following are the available options of animation effect:
animCallBacks - Optional
It is a JS dictionary containing the events invoked by the platform during the animation life cycle. Following are the available events:
- animStarted: Invoked at the beginning of the animation without any parameters. Following is the signature of event: function animStarted()
- animEnded: Invoked at the end of the animation without any parameters. Following is the signature of the event: function animEnded()
NOTE: Passing an invalid type other than the above events lead to run time exceptions/ crashes.
Return Values
None
Exceptions
WidgetError
Example
//Defining animation configuration. var withAnimConfig= { "animEffect":constants.ANIMATION_EFFECT_EXPand, "animDuration":1.5, "animDelay":0.4, "animCurve":constants.ANIMATION_CURVE_LINEAR, "animCallBacks":{"animStarted":startCallBackFunc, "animEnded":endCallBackFunc } } //Defining the properties for a Box properties. var basicConfBox = {id:"boxAddAtMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxAddAtMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Adding label to the box at 15th index Position. //Label should be created already and accessible as well. boxAddAtMethodTest.addAt(lbl,15, withAnimConfig);
Platform Availability
Available on all platforms
remove
This method removes a widget from the Box container. If a new widget is removed will reflect immediately from the Box hierarchy model perspective, however the changes are displayed when the Box appears. When the widgets are added to the current visible Box, then the changes will reflect immediately.
Syntax
remove (widgetref)
Parameters
widgetref - Mandatory
Reference of the widget to be removed.
Return Values
The current Form handle is returned.
Exceptions
WidgetError
Example
//Defining the properties for a Box properties. var basicConfBox = {id:"boxRemoveMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxRemoveMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Removing label widget from the box .Here label should be created already and added inside the box. boxRemoveMethodTest.remove(lbl);
Platform Availability
Available on all platforms
removeAt
This method removes a widget at the given index from the Box container. If a new widget is removed will reflect immediately from the Box hierarchy model perspective, however the changes are displayed when the Box appears. When the widgets are added to the current visible Box, then the changes will reflect immediately.
NOTE: If the index is not within the limits then removeAt will be silent and doesn't yield any result.
Syntax
removeAt (index, animationConfig)
NOTE: The parameter animationConfig is supported only on iOS ( version 5.0 and above) and android (version 3.0 and above) platforms.
Parameters
index [Number] - Mandatory
Index number at which the widget is to be removed.
animationConfig [JSObject] - Optional
Specifies the animation configuration object. Following are the parameters of the JSObject:
NOTE: A non dictionary object or passing a null to animationConfig is ignored and will be treated as widget without any animation. Passing an empty dictionary will make the API assume the defaults for each of the supported key in the animation configuration.
animEffect - Optional
Specifies the animation effect. Following are the available options of animation effect:
animCallBacks - Optional
It is a JS dictionary containing the events invoked by the platform during the animation life cycle. Following are the available events:
- animStarted: Invoked at the beginning of the animation without any parameters. Following is the signature of the event.
function animStarted()- animEnded: Invoked at the end of the animation without any parameters. Following is the signature of the event.
function animEnded()NOTE: Passing an invalid type other than the above events lead to run time exceptions/ crashes.
Return Values
Reference of the name of the widget to be removed.
Exceptions
WidgetError
Example
//Defining animation configuration. var withAnimConfig1= { "animEffect":constants.ANIMATION_EFFECT_COLLAPSE, "animDuration":1, "animDelay":0, "animCurve":constants.ANIMATION_CURVE_LINEAR, } //Defining the properties for a Box properties. var basicConfBox = {id:"boxRemoveAtMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxRemoveAtMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Removing label from the box at 15th index Position. Label should be created and added at 15th index position of the box. boxRemoveAtMethodTest.removeAt(15, withAnimConfig1);
Platform Availability
Available on all platforms
replaceAt
This method replaces a widget with another widget in the HBox. If a widget is replaced from the HBox, will reflect immediately from the HBox hierarchy model perspective; however the changes are displayed when the HBox appears.
NOTE: Post this operation widget that was replaced will get garbage collected unless you hold explicitly a reference to the replaced widget.
Syntax
replaceAt(widgetref, index, animationConfig)
Parameters
widgetref - Mandatory
Reference of the name of the widget.
index [Number] - Mandatory
Specifies the position in number format. Following are the rules applicable for index:
- If the index < 0, then first widget in the container gets replaced.
- If the index > size -1, then the last widget in the container widget gets replaced. The term size refers to the number of widgets present in the container widget.
animationConfig[JSObject] - Optional
Specifies the animation configuration object. Following are the parameters of the JSObject:
NOTE: A non dictionary object or passing a null to animationConfig is ignored and will be treated as widget without any animation. Passing an empty dictionary will make the API assume the defaults for each of the supported key in the animation configuration.
animEffect - Optional
Specifies the animation effect. Following are the available options of animation effect:
animCallBacks - Optional
It is a JS dictionary containing the events invoked by the platform during the animation life cycle. Following are the available events:
- animStarted: Invoked at the beginning of the animation without any parameters. Following is the signature of the event:
function animStarted()- animEnded: Invoked at the end of the animation without any parameters. Following is the signature of the event:
function animEnded()NOTE: Passing an invalid type other than the above events lead to run time exceptions/ crashes.
Return Values
Reference of the name of the widget to be removed.
Exceptions
WidgetError
Example
//Defining animation configuration. var withAnimConfig2= { "animEffect":constants.ANIMATION_EFFECT_FLIP_RIGHT, "animDuration":2, "animDelay":3, "animCurve":constants.ANIMATION_CURVE_LINEAR, "animCallBacks":{ "animStarted":startCallBackFunc, "animEnded":endCallBackFunc } } //Defining the properties for a Box properties. var basicConfBox = {id:"boxRemoveAtMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxRemoveAtMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Replacing label from the box at 15th index Position. Here label should be created and added at 15th index position of the box. boxRemoveAtMethodTest.removeAt(lbl,15,withAnimConfig2);
Platform Availability
- iOS
- android
widgets
This method returns an array of the widget references which are direct children of Box.
Syntax
widgets ()
Parameters
None
Return Values
This method returns Read only array of widget references. Modifying the array and changing the position of widgets in this array doesn't reflect in the Box hierarchy, however you can get handle to the widgets through this array and modify the widgets through widget level methods as exposed by individual widgets.
Exceptions
WidgetError
Example
//Defining the properties for a Box properties. var wigArr = new Array(); var basicConfBox = {id:"boxWidgetsMethodTest", isVisible:true, orientation:constants.BOX_LAYOUT_VERTICAL, skin:"gradroundbox"}; var layoutConfBox = {containerWeight:100}; //Creating the Box. var boxWidgetsMethodTest = new kony.ui.Box(basicConfBox, layoutConfBox, {}); //Collecting all the widgets of the box into array and displaying the references. wigArr = boxWidgetsMethodTest.widgets(); alert("Widgets are::"+wigArr);
Platform Availability
Available on all platforms