iPhone/iPad上下文菜单

Mel*_*ina 5 iphone objective-c ipad ios

我在谈论当你选择一个文本块时显示的菜单,它为你提供了剪切/粘贴/复制的选项.我想出了如何在菜单中添加一个选项,但如果我添加两个或更多选项,它将首先说"更多".点击它将显示我添加的所有选项.但有没有办法显示我提前添加的所有选项?没有"更多"菜单项?

chr*_*o16 7

您需要使用UIMenuController.如果您不想复制/粘贴/剪切,您将在canPerformAction:方法中包含以下内容:

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
     if(action == @selector(someSelector:))
         return YES;
     else 
         return NO;
}
Run Code Online (Sandbox Code Playgroud)

创建一个新的菜单项如下所示:

UIMenuItem *someAction = [[UIMenuItem alloc]initWithTitle:@"Something" action:@selector(doSomething:)];

UIMenuController *menu = [UIMenuController sharedMenuController];
menu.menuItems = [NSArray arrayWithObject:someAction];
[menu update];
Run Code Online (Sandbox Code Playgroud)