Class LayoutGroup

Definition

Namespace:
Tizen.NUI
Assembly:
Tizen.NUI.dll

[Draft] LayoutGroup class providing container functionality.

C#
Copy
public class LayoutGroup : LayoutItem, IDisposable, ILayoutParent
Inheritance
System.Object
LayoutGroup
Derived
Implements
System.IDisposable

Constructors

View Source

LayoutGroup()

[Draft] Constructor

Declaration
C#
Copy
public LayoutGroup()
API Level: 6

Properties

View Source

LayoutChildren

[Draft] List of child layouts in this container.

Declaration
C#
Copy
protected List<LayoutItem> LayoutChildren { get; }
Property Value
Type Description
System.Collections.Generic.List<LayoutItem>
API Level: 6

Methods

View Source

Add(LayoutItem)

From ILayoutParent.

Declaration
C#
Copy
public virtual void Add(LayoutItem childLayout)
Parameters
Type Name Description
LayoutItem childLayout

LayoutItem to add to the layout group.

Exceptions
Type Condition
System.ArgumentNullException

Thrown when childLayout is null.

API Level: 6
View Source

GetChildMeasureSpecification(MeasureSpecification, LayoutLength, LayoutLength)

Calculate the right measure spec for this child. Does the hard part of MeasureChildren: figuring out the MeasureSpec to pass to a particular child. This method figures out the right MeasureSpec for one dimension (height or width) of one child view.

Declaration
C#
Copy
public static MeasureSpecification GetChildMeasureSpecification(MeasureSpecification parentMeasureSpec, LayoutLength padding, LayoutLength childDimension)
Parameters
Type Name Description
MeasureSpecification parentMeasureSpec

The requirements for this view. MeasureSpecification.

LayoutLength padding

The padding of this view for the current dimension and margins, if applicable. LayoutLength.

LayoutLength childDimension

How big the child wants to be in the current dimension. LayoutLength.

Returns
Type Description
MeasureSpecification

a MeasureSpec for the child.

View Source

MeasureChild(LayoutItem, MeasureSpecification, MeasureSpecification)

Ask one of the children of this view to measure itself, taking into account both the MeasureSpec requirements for this view and its padding.
The heavy lifting is done in GetChildMeasureSpecification.

Declaration
C#
Copy
protected virtual void MeasureChild(LayoutItem child, MeasureSpecification parentWidthMeasureSpec, MeasureSpecification parentHeightMeasureSpec)
Parameters
Type Name Description
LayoutItem child

The child to measure.

MeasureSpecification parentWidthMeasureSpec

The width requirements for this view.

MeasureSpecification parentHeightMeasureSpec

The height requirements for this view.

Exceptions
Type Condition
System.ArgumentNullException

Thrown when child is null.

API Level: 6
View Source

MeasureChildren(MeasureSpecification, MeasureSpecification)

Ask all of the children of this view to measure themselves, taking into account both the MeasureSpec requirements for this view and its padding.
The heavy lifting is done in GetChildMeasureSpec.

Declaration
C#
Copy
protected virtual void MeasureChildren(MeasureSpecification widthMeasureSpec, MeasureSpecification heightMeasureSpec)
Parameters
Type Name Description
MeasureSpecification widthMeasureSpec

The width requirements for this view.

MeasureSpecification heightMeasureSpec

The height requirements for this view.

API Level: 6
View Source

MeasureChildWithMargins(LayoutItem, MeasureSpecification, LayoutLength, MeasureSpecification, LayoutLength)

Ask one of the children of this view to measure itself, taking into account both the MeasureSpec requirements for this view and its padding.
and margins. The heavy lifting is done in GetChildMeasureSpecification.

Declaration
C#
Copy
protected virtual void MeasureChildWithMargins(LayoutItem child, MeasureSpecification parentWidthMeasureSpec, LayoutLength widthUsed, MeasureSpecification parentHeightMeasureSpec, LayoutLength heightUsed)
Parameters
Type Name Description
LayoutItem child

The child to measure.

MeasureSpecification parentWidthMeasureSpec

The width requirements for this view.

LayoutLength widthUsed

Extra space that has been used up by the parent horizontally (possibly by other children of the parent).

MeasureSpecification parentHeightMeasureSpec

The height requirements for this view.

LayoutLength heightUsed

Extra space that has been used up by the parent vertically (possibly by other children of the parent).

Exceptions
Type Condition
System.ArgumentNullException

Thrown when child is null.

API Level: 6
View Source

OnAttachedToOwner()

Overridden method called when the layout is attached to an owner.

Declaration
C#
Copy
protected override void OnAttachedToOwner()
Overrides
API Level: 6
View Source

OnChildAdd(LayoutItem)

Callback when child is added to container.
Derived classes can use this to set their own child properties on the child layout's owner.

Declaration
C#
Copy
protected virtual void OnChildAdd(LayoutItem child)
Parameters
Type Name Description
LayoutItem child

The Layout child.

API Level: 6
View Source

OnChildRemove(LayoutItem)

Callback when child is removed from container.

Declaration
C#
Copy
protected virtual void OnChildRemove(LayoutItem child)
Parameters
Type Name Description
LayoutItem child

The Layout child.

API Level: 6
View Source

OnLayout(Boolean, LayoutLength, LayoutLength, LayoutLength, LayoutLength)

Called from Layout() when this layout should assign a size and position to each of its children.
Derived classes with children should override this method and call Layout() on each of their children.

Declaration
C#
Copy
protected override void OnLayout(bool changed, LayoutLength left, LayoutLength top, LayoutLength right, LayoutLength bottom)
Parameters
Type Name Description
Boolean changed

This is a new size or position for this layout.

LayoutLength left

Left position, relative to parent.

LayoutLength top

Top position, relative to parent.

LayoutLength right

Right position, relative to parent.

LayoutLength bottom

Bottom position, relative to parent.

Overrides
API Level: 6
View Source

OnMeasure(MeasureSpecification, MeasureSpecification)

Measure the layout and its content to determine the measured width and the measured height.
If this method is overridden, it is the subclass's responsibility to make sure the measured height and width are at least the layout's minimum height and width.

Declaration
C#
Copy
protected override void OnMeasure(MeasureSpecification widthMeasureSpec, MeasureSpecification heightMeasureSpec)
Parameters
Type Name Description
MeasureSpecification widthMeasureSpec

horizontal space requirements as imposed by the parent.

MeasureSpecification heightMeasureSpec

vertical space requirements as imposed by the parent.

Overrides
API Level: 6
View Source

Remove(LayoutItem)

From ILayoutParent

Declaration
C#
Copy
public virtual void Remove(LayoutItem layoutItem)
Parameters
Type Name Description
LayoutItem layoutItem

LayoutItem to remove from the layout group.

API Level: 6
View Source

RemoveAll()

Remove all layout children.

Declaration
C#
Copy
public void RemoveAll()
API Level: 6

Implements

System.IDisposable