The MAFOptionMenu control extends the capabilities of the optionmenu native Android control. MAF adds styling capabilities to the Optionmenu UI component. MAF supports skinning of tapped/untapped, and enabled/disabled visual states.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.default_menu, menu);
// Customize existing option menu. Must be called in
onCreateOptionsMenu
// method.
MAFUIFactory.getInstance().customizeOptionMenu(this, getResources());
return true;
}
The MAF skinning engine customizes the optionmenus. To apply SAP style, set the custom style for background and foreground in the XML file.
<Style TargetType="OptionMenu" platform="android">
<VisualStates>
<VisualState Name="Unfocused_Enabled">
<Setter Property="Background" Value="#ff1b1b1b" />
<!-- background color -->
</VisualState>
<Setter Property="Foreground" Value="#ffa5a5a5" />
<!-- text color -->
</ Style >
<VisualState Name="Unfocused_Disabled">
<Setter Property="Background" Value="fff0f0f0" />
<!-- background color -->
</VisualState>
<VisualState Name="Focused_Disabled">
<Setter Property="Background" Value="#fff0f0f0" />
<!-- background color -->
</VisualState>
<VisualState Name="Focused_Enabled">
<Setter Property="Background" Value="#ffb2e3f3" />
<!-- background color -->
</VisualState>
<VisualState Name="Pressed">
<Setter Property="Background" Value="#ff0062a9" />
<!-- background color -->
</ VisualState >
| Background | Color of the MAFOptionMenu’s background; can also be a freestyle gradient. Colors are defined as RGBA (red, green, blue, alpha). |
| Foreground | Control's text color. |