我的应用程序可以弹出菜单。按下“全选”按钮时,我想启用“删除”按钮。但是我无法让这个工作。
这是一个说明问题的sample project。运行它,然后点击“菜单”按钮,按“全选”。 “删除”按钮应立即显示,但仅在隐藏菜单然后再次显示时才会显示。我该如何解决这个问题?
答案 0 :(得分:2)
以下是诀窍:
- (void)didHide:(NSNotification *)notif {
UIMenuController *mc = [UIMenuController sharedMenuController];
dispatch_async(dispatch_get_global_queue(0,0), ^{
dispatch_async(dispatch_get_main_queue(), ^{
[mc update];
[mc setMenuVisible:YES animated:YES];
});
});
}
但我注意到它不能很可靠,例如将animated
设置为NO
时,菜单不会动态更新。
答案 1 :(得分:0)
这已在iOS 5中解决(rdar:// problem / 8819322)。