我正在尝试从UIMenuController中删除默认菜单项。我发现了UIWebview或UITextView的这篇文章:
How to remove the default UIMenuItem from the UIMenuController in iOS?
我正在尝试为新的iOS 5方法执行此操作,您可以在表格选择中显示菜单项。所以我的类是UIViewController的子类,里面有一个UITableView。我不确定如何或如果删除默认项目是可能的。谢谢!
答案 0 :(得分:1)
表视图委托方法-tableView:canPerformAction:forRowAtIndexPath:withSender:
正是出于此目的。
以下是一个例子:
override func tableView(tableView: UITableView, canPerformAction action: Selector, forRowAtIndexPath indexPath: NSIndexPath, withSender sender: AnyObject?) -> Bool {
switch action {
case Selector("cut:"), Selector("copy:"), Selector("paste:"):
return false // as per your question
case Selector("myAction:"):
return true
default:
return false
}
}
答案 1 :(得分:-5)
使用此代码删除cut
,copy
,paste
和select
的默认功能:
(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
UIMenuController * menuContoller=[UIMenuController sharedMenuController];
if (menuContoller)
{
[UIMenuController sharedMenuController].menuVisible=NO;
}
return NO;
}