Context Menu
Display a native context menu, that can be attached to nearly any control.
Last updated
Display a native context menu, that can be attached to nearly any control.
Last updated
⚙️ Powered by Rock RMS
A common pattern in mobile development is to attach a native menu to a control, that can be opened by tapping or holding the control. This is now an easily achievable and highly customizable feature of Rock Mobile!
Due to limitations on Android, these are more fleshed out on iOS. We didn't want to take the native iOS features away, so some properties may not translate to Android.
To get started, we've introduced three controls:
Menu - The top-level menu, can be nested for submenus.
MenuAction - An action that can be taken from the menu (think of this as a Menu item).
MenuGroup - A group of Action
s or Menu
s. These cannot be nested.
Name | Type | Description |
---|---|---|
Title | string | A string title to be displayed at the top of the menu. iOS ✅ Android ❌ |
Name | Type | Description |
---|---|---|
Title | string | The title of the action. |
Command | ICommand | The command to execute when the action is selected. |
CommandParameter | object | The parameter to pass along to the command. |
Icon | ImageSource | An image icon to display with the menu action. |
SystemIcon | string | The system icon to display with the menu icon. See the System Icons section for more info. iOS ✅ Android ❌ |
IsEnabled | bool | Enables or disabled the menu action. |
IsVisible | bool | Whether or not the action should currently display. |
IsDestructive | bool | Whether or not this is a destructive menu item. |
Name | Type | Description |
---|---|---|
Title | string | The title of the group. |
These are only really supported on iOS. These are in the form of SF Symbols, and you should be careful to ensure this only gets set on the iOS platform. You can see examples of this below.
Opens a Context Menu when the Border is held down.
In certain cases, you may want the Context Menu to instantly open. For this to work properly, the Menu must be attached to a Button.