在iPhoto中,我可以简单地握住我的手指在图片上即可得到“复制”弹出(就像你在文本框中看到弹出)。
在我的UIImageView的,这种情况并非如此。 我如何才能启用它?
在iPhoto中,我可以简单地握住我的手指在图片上即可得到“复制”弹出(就像你在文本框中看到弹出)。
在我的UIImageView的,这种情况并非如此。 我如何才能启用它?
您可以手动显示使用剪切/复制/粘贴菜单UIMenuController
类 。 例如,下面的代码将显示菜单,集中在图像上:
[self becomeFirstResponder];
UIMenuController *copyMenuController = [UIMenuController sharedMenuController];
[copyMenuController setTargetRect:image.frame inView:self.view];
[copyMenuController setMenuVisible:YES animated:YES];
这假定您将实现在这段代码UIViewController
为承载您的图像视图。
为了能够使用各种菜单项,你还需要实现控制器几委托方法:
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action == @selector(cut:))
return NO;
else if (action == @selector(copy:))
return YES;
else if (action == @selector(paste:))
return NO;
else if (action == @selector(select:) || action == @selector(selectAll:))
return NO;
else
return [super canPerformAction:action withSender:sender];
}
- (BOOL)canBecomeFirstResponder
{
return YES;
}
在这种情况下,只有复制菜单选项将被启用。 您还需要实施适当的-copy:方法来处理,当用户选择该菜单项时会发生什么。