UIButton

The UIButton component represents a button UI element.

class UIButton

extends UIControl

Represents a button component.

Note: The UIButton component doesn’t have any particular style applied to it; use any of the related classes for a styled button component instead.

See Also

UIBorderlessButton, UIIconButton, UILargeButton, UILinkButton, UIOutlineButton, UIPrimaryButton, UISmallButton.

Constructor

(label?: Stringable): UIButton

.withLabel() static

(label: Binding | Stringable, onClick?: string): typeof UIButton

Creates a preset button class with given label (localized using strf) and onClick handler, if any.

.withIcon() static

(icon: string, onClick?: string, size?: string | number, color?: string | UIColor): typeof UIButton

Creates a preset button class with given icon only, and onClick handler, if any.

.isFocusable()

(): boolean

Returns true if this component can be focused directly using mouse or touch, or manually using UIComponent.requestFocus. This method may be overridden by derived component classes, but the return value must be constant for each instance.

.isKeyboardFocusable()

(): boolean

Returns true if this component can be focused using the keyboard as well as using other methods (rather than direct manipulation only). This method may be overridden by derived component classes, but the return value must be constant for each instance.

.disableKeyboardFocus

boolean

Set to true to disable keyboard focus for this button.

.label

Stringable

Label text.

.icon

string

Icon name (platform and build system dependent).

.iconSize

string | number

Icon size (in dp or string with unit).

.iconMargin

string | number

Margin between icon and label text (in dp or string with unit).

.iconColor

string | UIColor

Icon color.

.iconAfter

boolean

Set to true to make the icon appear after the text instead of before.

.navigateTo

string

Path to navigate to automatically when clicked, if not blank; use :back to go back in history.

.applyStyle() protected

(style?: UIStyle): void

Inherited from UIControl.applyStyle.

.textStyle

Readonly<TextStyle>

Inherited from UIControl.textStyle.

.decoration

Readonly<Decoration>

Inherited from UIControl.decoration.

.disabled

boolean

Inherited from UIControl.disabled.

.shrinkwrap

boolean

Inherited from UIControl.shrinkwrap.

.propagateComponentEvent() deprecated

(name: string, inner?: ManagedEvent, event?: any): void

Inherited from UIComponent.propagateComponentEvent.

.delegateEvent() protected

(e: ManagedEvent, propertyName: string): true

Inherited from UIComponent.delegateEvent.

.render()

(callback: RenderCallback<Output<UIRenderable, any>>): void

Inherited from UIComponent.render.

.requestFocus()

(): void

Inherited from UIComponent.requestFocus.

.requestFocusNext()

(): void

Inherited from UIComponent.requestFocusNext.

.requestFocusPrevious()

(): void

Inherited from UIComponent.requestFocusPrevious.

.style

UIStyle

Inherited from UIComponent.style.

.hidden

boolean

Inherited from UIComponent.hidden.

.dimensions

Readonly<Dimensions>

Inherited from UIComponent.dimensions.

.position

Readonly<Position>

Inherited from UIComponent.position.

.accessibleRole

string

Inherited from UIComponent.accessibleRole.

.accessibleLabel

string

Inherited from UIComponent.accessibleLabel.

.lastRenderOutput

Output<this, any>

Inherited from UIComponent.lastRenderOutput.

.isPresetComponent() protected

(): boolean

Inherited from Component.isPresetComponent.

.getParentComponent()

<TParent extends Component = Component>(ParentClass?: ComponentConstructor<TParent>): TParent

Inherited from Component.getParentComponent.

.getBoundParentComponent()

<TParent extends Component>(ParentClass?: ComponentConstructor<TParent>): TParent

Inherited from Component.getBoundParentComponent.

.emitAction()

(name: string, inner?: ManagedEvent, context?: ManagedObject): void

Inherited from Component.emitAction.

.managedId

number

Inherited from ManagedObject.managedId.

.managedState

ManagedState

Inherited from ManagedObject.managedState.

.getReferenceCount() protected

(): number

Inherited from ManagedObject.getReferenceCount.

.getManagedReferrers() protected

(): ManagedObject[]

Inherited from ManagedObject.getManagedReferrers.

.getManagedParent() protected

<TParent extends ManagedObject = ManagedObject>(ParentClass?: ManagedObjectConstructor<TParent>): TParent

Inherited from ManagedObject.getManagedParent.

.emit()

<TEvent extends ManagedEvent = ManagedEvent, TConstructorArgs extends any[] = any[]>(e: string | TEvent | (new (...args: TConstructorArgs) => TEvent), ...constructorArgs: TConstructorArgs): this

Inherited from ManagedObject.emit.

.emitChange()

(name?: string): void

Inherited from ManagedObject.emitChange.

.propagateChildEvents() protected deprecated

(...types: ((new (...args: any[]) => ManagedEvent) | ((e: ManagedEvent) => any))[]): this

Inherited from ManagedObject.propagateChildEvents.

.activateManagedAsync() protected

(): Promise<any>

Inherited from ManagedObject.activateManagedAsync.

.deactivateManagedAsync() protected

(): Promise<void>

Inherited from ManagedObject.deactivateManagedAsync.

.destroyManagedAsync() protected

(): Promise<void>

Inherited from ManagedObject.destroyManagedAsync.

.onManagedStateActivatingAsync() protected

(): Promise<void>

Inherited from ManagedObject.onManagedStateActivatingAsync.

.onManagedStateActiveAsync() protected

(): Promise<void>

Inherited from ManagedObject.onManagedStateActiveAsync.

.onManagedStateDeactivatingAsync() protected

(): Promise<void>

Inherited from ManagedObject.onManagedStateDeactivatingAsync.

.onManagedStateInactiveAsync() protected

(): Promise<void>

Inherited from ManagedObject.onManagedStateInactiveAsync.

.onManagedStateDestroyingAsync() protected

(): Promise<void>

Inherited from ManagedObject.onManagedStateDestroyingAsync.


UIButton.Presets

extends UIControl.Presets

UIButton presets type, for use with Component.with.

.label

Stringable

Button label text.

.icon

string

Icon name (platform and build system dependent).

.iconSize

string | number

Icon size (in dp or string with unit).

.iconMargin

string | number

Margin between icon and text (in dp or string with unit).

.iconColor

string | UIColor

Icon color (UIColor or string).

.iconAfter

boolean

Set to true to make the icon appear after the text instead of before.

.navigateTo

string

Path to navigate to automatically when clicked, if not blank; use :back to go back in history.

.disableKeyboardFocus

boolean

Set to true to disable keyboard focus for this button.

.textStyle

Partial<{} | TextStyle>

Inherited from UIControl.Presets.textStyle.

.decoration

Partial<{} | Decoration>

Inherited from UIControl.Presets.decoration.

.disabled

boolean

Inherited from UIControl.Presets.disabled.

.shrinkwrap

boolean

Inherited from UIControl.Presets.shrinkwrap.

.style

string | UIStyle

Inherited from UIComponent.Presets.style.

.hidden

boolean

Inherited from UIComponent.Presets.hidden.

.dimensions

Partial<{} | Dimensions>

Inherited from UIComponent.Presets.dimensions.

.position

Partial<{} | Position>

Inherited from UIComponent.Presets.position.

.accessibleRole

string

Inherited from UIComponent.Presets.accessibleRole.

.accessibleLabel

string

Inherited from UIComponent.Presets.accessibleLabel.

.requestFocus

boolean

Inherited from UIComponent.Presets.requestFocus.