我想为选择某些文字时出现的菜单添加其他菜单项。
我已将以下代码添加到viewDidLoad
:
NSMutableArray *extraItems = [[NSMutableArray alloc] init];
UIMenuItem *boldItem = [[UIMenuItem alloc] initWithTitle:@"Bold"
action:@selector(bold:)];
[extraItems addObject:boldItem];
[UIMenuController sharedMenuController].menuItems = extraItems;
我也用这些方法覆盖了我的自定义UIWebView:
- (void)bold:(id)sender {
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
if (action == @selector(bold:))
return YES;
return [super canPerformAction:action
withSender:sender];
}
因此,有时当我突出显示文本菜单时,菜单会安抚,但有时则不会。我不知道问题是什么。
答案 0 :(得分:0)
您的数组“extraItems”应该是NSArray,而不是NSMutableArray,因此您添加到viewDidLoad的前三行应替换为:
UIMenuItem* extraItem = [[UIMenuItem alloc] initWithTitle:@"Bold"
action:@selector(bold:)];
NSArray* extraItems = [NSArray arrayWithObject:extraItem];
然后将这个版本的extraItems数组添加到sharedMenuController中。就像你一样。