Ios 显示UIMenuViewController时隐藏键盘
当我在Ios 显示UIMenuViewController时隐藏键盘,ios,objective-c,keyboard,uimenucontroller,Ios,Objective C,Keyboard,Uimenucontroller,当我在uitextfield上显示UIMenuViewController时,键盘也会弹出 想知道当UIMenuViewController可见时是否有办法隐藏键盘 我使用下面的代码来显示菜单 NSArray *buttons = items; NSMutableArray *menuItems = [NSMutableArray array]; for (NSString *buttonText in buttons) { NSString *sel =
uitextfield
上显示UIMenuViewController
时,键盘也会弹出
想知道当UIMenuViewController
可见时是否有办法隐藏键盘
我使用下面的代码来显示菜单
NSArray *buttons = items;
NSMutableArray *menuItems = [NSMutableArray array];
for (NSString *buttonText in buttons) {
NSString *sel = [NSString stringWithFormat:@"magic_%@", buttonText];
[menuItems addObject:[[UIMenuItem alloc]
initWithTitle:buttonText
action:NSSelectorFromString(sel)]];
}
UIMenuController *menuCont = [UIMenuController sharedMenuController];
[menuCont setTargetRect:view.frame inView:view.superview];
menuCont.arrowDirection = UIMenuControllerArrowDown;
menuCont.menuItems = menuItems;
[menuCont setMenuVisible:YES animated:YES];
当您想要隐藏键盘(在您的示例中,菜单项是可见的)以隐藏键盘时,请使用 [textField resignFirstResponder]
也许你的问题会解决我想你可以设置一个观察者来监听
uimenucontrollershowmenunotification
,然后在你的计算机上调用一个名为endEditing
的方法views@LouisTur我添加了[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(\u textWillShowMenu:)名称:UIMenuControllerWillShowMenuTification对象:nil];但是如何访问textWillShowMenu中的视图?您可以调用对包含文本的视图的任何引用,例如,如果您使用的是UIViewController
,您可以调用[self.view endEditing:YES]
,调用顶级视图将放弃所有子视图的FirstResponder设计FirstResponder将显示键盘打开和关闭的轻弹效果。