有谁知道,如何在iPhone 3.0上禁用剪切,复制和粘贴选项?
感谢您的帮助和时间。
答案 0 :(得分:3)
我也找不到很多关于使用 canPerformAction:withSender:的文档。因此,我决定在退出应用程序时清除粘贴板。在我的AppDelegate.m中:
- (void)applicationWillTerminate:(UIApplication *)application {
NSLog(@"application terminating");
// Clear pasteboard to prevent pasting into other applications:
UIPasteboard *pasteBoard = [UIPasteboard generalPasteboard];
pasteBoard.items = nil;
}
这适用于我的用户注释参考应用程序。我不介意用户在我的应用程序中复制和粘贴,但我宁愿他们不要重新发布我的原始内容。
在某些时候,我希望使用 canPerformAction:withSender:进行更细粒度的控制,以便我可以允许用户复制/粘贴他们自己创建的内容。
答案 1 :(得分:3)
在控制器类中重写此方法。
//隐藏剪切/复制/粘贴菜单
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender {
if ( [UIMenuController sharedMenuController] )
{
[UIMenuController sharedMenuController].menuVisible = NO;
}
return NO;
}
答案 2 :(得分:2)
任何响应者(UIView或UIWindow子类)都可以覆盖 canPerformAction:withSender:方法,因此您只需为您不想允许的所有操作返回NO。
请参阅UIResponder documentation ...