Search Issue Tracker
By Design
Votes
1
Found in
5.3.5f1
Issue ID
808147
Regression
No
Check status in Menu Item is reset when entering play mode
To reproduce:
1. Open attached project
2. Open AAA menu and notice that A is checked
3. Press play
4. Open AAA menu - A is unchecked, but it should be checked
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- UI Overlay Image gets darker on each Camera when multiple Cameras are used
- Assertion failed on expression: 'scriptedImporterClass == SCRIPTING_NULL error when opening the standalone profiler window
- Disabled assets in Import Unity Package window aren't tracked but count as being selected by user
- [Windows] Crash on GetManagerFromContext when video is playing and creating High Definition 3D Projects after FMOD failed to switch back to normal output Error appeared
- GC Alloc produced when adding items to MultiColumnListView with Auto Assign Binding
OndrejP
Jan 25, 2018 11:27
@NEILMILLSTONE
Validation method works for me in Unity 2017.3.0f2
private const string MenuItemName = "Tools/SOMETHING";
public static bool Enabled
{
get { return EditorPrefs.GetBool(MenuItemName, false); }
set
{
EditorPrefs.SetBool(MenuItemName, value);
EditorApplication.delayCall += () => Menu.SetChecked(MenuItemName, value);
}
}
[MenuItem(MenuItemName)]
public static void ToggleEnabled()
{
Enabled = !Enabled;
}
[MenuItem(MenuItemName, validate = true)]
public static bool ValidateEnabled()
{
Menu.SetChecked(MenuItemName, Enabled);
return true;
}
Ghat-Smith
Dec 11, 2017 12:36
Hello. After struggling with a similar problem (checkboxes lost after script compilation), it seems that I found a solution. You can call SetChecked in the MenuItem validation method. See documentation (https://docs.unity3d.com/ScriptReference/MenuItem.html) for more details about MenuItem validation implementation.
neilmillstone
Dec 15, 2016 17:43
This is still an issue, since Menus cannot be checked during the game, we're left with checkboxes that always look unchecked in play mode. This makes people confused.
Even calling Menu.SetChecked(MENU_NAME, true) every frame doesn't cause a check mark to appear during play mode.