在iphone 3.0上如何禁用剪切、复制和粘贴选项

在iphone 3.0上如何禁用剪切、复制和粘贴选项,iphone,iphone-sdk-3.0,Iphone,Iphone Sdk 3.0,有人知道吗,我如何在iPhone3.0上禁用剪切、复制和粘贴选项 感谢您的帮助和时间。任何响应程序(UIView或UIWindow子类)都可以覆盖canPerformAction:withSender:方法,因此您可以对所有不希望允许的操作返回“否” 请参阅…我也找不到关于为此目的使用canPerformAction:withSender:的大量文档。因此,我决定在退出应用程序时清除粘贴板。在my AppDelegate.m中: - (void)applicationWillTerminate:

有人知道吗,我如何在iPhone3.0上禁用剪切、复制和粘贴选项

感谢您的帮助和时间。

任何响应程序(UIView或UIWindow子类)都可以覆盖canPerformAction:withSender:方法,因此您可以对所有不希望允许的操作返回“否”


请参阅…

我也找不到关于为此目的使用canPerformAction:withSender:的大量文档。因此,我决定在退出应用程序时清除粘贴板。在my 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:,这样我就可以允许用户复制/粘贴他们自己创建的内容。

在控制器类中重写此方法

//隐藏剪切/复制/粘贴菜单

-(BOOL)canPerformAction:(SEL)action withSender:(id)sender {

    if ( [UIMenuController sharedMenuController] )
    {
        [UIMenuController sharedMenuController].menuVisible = NO;

    }
    return NO;  
}

谢谢David的回复,但不幸的是,我刚刚开始iphone开发一周。你介意告诉我如何使用这个实例方法吗?一个示例代码将是伟大的。在我的UI视图中,我有两个文本控件,我想禁用这两个控件。看起来您必须创建一个UITextField的子类来覆盖canPerformAction,然后将该类用于您的输入字段。我不认为这很难做到,但我对目标C足够新,我需要花一些时间来弄清楚细节;也许其他人可以举个例子。嗯……出于某种原因,这对我不起作用。我的UITextField位于UITableViewCell中。当我将其添加到UITableViewController子类中时,我可以验证是否所有选择器都被重复调用,但菜单仍然显示。知道会出什么问题吗?这里也一样。我可以验证它是否被调用,但菜单仍然显示。我的目标是iOS 5,所以我想知道iOS 3之后是否有什么变化?