Skip to main content

Action bar

Class: ActionBar.

This component provides set of icon buttons. Each button have their icon & click handler.

Component can be focused by wheel scroll, it will switch between buttons inside with them and call onClock on wheel short click.

Demo

page/index.js
import { ListView } from "mzfw/device/UiListView";
import { ActionBar } from "mzfw/device/UiActionBar";
import { spawnPlaceholders } from "mzfw/device/DocumentationDemos";

class MyPage extends ListView {
build() {
return [
// Some grey squares, for preview
...spawnPlaceholders(),

// Action bar and their items
new ActionBar({
children: [
{
icon: "add",
onClick: () => console.log("onAdd"),
},
{
icon: "settings",
onClick: () => console.log("onSettings"),
},
]
}),
];
}
}

Page(ListView.makePage(new MyPage({})));

Use cases​

Component is designed to be used as action or tool bar, located at top or at bottom of page, not as header/footer. Recommended count of buttons is 1-2, but it can contain any count of them — buttons will be placed in multiple rows.

Design & layout​

Buttons will be listed from left to right, if not fit into component width – in multiple rows. Background colors can be provided in properties, if not provided — them will be loaded from compositor’s theme.

Required icon sizes:

Icon sizeDevice model(s)
48 pxAll devices

Items also can be disabled, which will make it opaque, prevent their focus with wheel and disable onClick handler.

Compatibility​

No issues or limitations known.

Properties​

children: ActionBarItem[]​

Button children descriptions.

ActionBarItem interface:

  • icon: string – Icon file name without extension, should be saved in app assets: $ASSETS/icon/$ICON_SIZE/$NAME.png;
  • disabled?: boolean — is item disabled, false by default;
  • onClick(): any — item click handler.

backgroundNormal?: number​

Normal button background color. Optional.

backgroundSelected?: number​

Selected button background color. Optional.

backgroundDisabled?: number​

Disabled button background color. Optional.