我有一个UIMenucontroller
,我在其中添加了一个名为“highlight”的菜单项,用于UIwebview
使用以下 JavaScript 为选定的文本添加突出显示:
[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]];
}