我有一个UIMenucontroller
,我在其中添加了一个名为“highlight”的菜单项,我用它来使用以下JavaScript在UIwebview
中为所选文本添加突出显示:
[webView stringByEvaluatingJavaScriptFromString:@"function load(){window.document.designMode = 'On';window.document.execCommand('backColor', false, 'Yellow');window.document.designMode = 'Off';} load();"];
但是,当我点击UIMenuController
中的突出显示按钮时,它会突出显示所选文字,但menuController
不会被忽略(或实际上会解散一微秒,然后重新出现)。
我在这里做错了什么?
BOOL isYellow = [currentColor isEqualToString:@"rgb(255, 255, 0)"];
UIMenuItem *notesMenuItem = [[UIMenuItem alloc] initWithTitle:(isYellow) ? @"Delete Note" : @"Add Note" action:@selector(addNote)];
if (!isYellow) {
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObjects:notesMenuItem,nil]]; }
else {
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObjects:nil]];
}