1

我有一个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]]; 
}
4

0 回答 0