我有一个支持复制并使用以下代码显示编辑菜单的视图:
if ([self becomeFirstResponder]) {
// bring up edit menu.
UIMenuController *theMenu = [UIMenuController sharedMenuController];
[theMenu setTargetRect:[self _textRect] inView:self];
[theMenu setMenuVisible:YES animated:YES];
}
问题是,当 becomeFirstResponder 被调用时,键盘被隐藏了。正确行为的一个很好的例子是在 SMS 应用程序中。在回复框可见且回复框失去焦点时双击消息,但键盘保持在原位。此外,当取消选择气泡时,回复框会重新获得焦点。