最近在用WebView(Mac),想把自带的右键菜单改装成自己需要的,调查摸索了一番,终于找到了方法,如下:
首先,设置delegate,在你的头文件里面定义的类的,引用delegate的尖括号里面添加:WebUIDelegate,然后再设置委托:
[webView setUIDelegate:self];
之后,重写delegate函数:
-(NSArray *)webView:(WebView *)sender contextMenuItemsForElement:(NSDictionary *)element defaultMenuItems:(NSArray *)defaultMenuItems
{}其中,element是一个字典,包含了你所点击的元素的信息,比如获取链接网址:
[element objectForKey:@"WebElementLinkURL"];
defaultMenuItems就是默认的右键菜单,如果你直接返回这个数组,就是使用默认的菜单,在这里你就可以定义自己的菜单,放到数组里面作为返回值传出。