辞职第一响应者 UITextView。临时 UINavigationBar?
Posted
技术标签:
【中文标题】辞职第一响应者 UITextView。临时 UINavigationBar?【英文标题】:Resign First Responder UITextView. Temporary UINavigationBar? 【发布时间】:2013-08-05 20:03:24 【问题描述】:我正在编写一个应用程序,让用户在文本视图中编辑一些内容,并且我想添加一个关闭按钮,让用户在那里保存编辑,而无需随意关闭键盘。
我熟悉以编程方式关闭键盘和一切。我现在唯一真正的问题是设计问题。我想让用户像在笔记应用程序中一样单击按钮,但我没有 UINavigationBar。
是否可以创建一个临时导航栏并为其分配一个“完成”按钮?
我将在自定义 UIView 中实现这一点,因此它应该是独立于控制器的。我的意思是我不知道当前控制器中是否存在 UInavigationBar。所以在添加临时的之前必须先处理。
感谢任何帮助。
【问题讨论】:
一种选择是使用您的关闭按钮创建一个 UIToolbar 并将其设置为键盘的 inputAccessoryView 属性。 【参考方案1】:这样的东西很适合你所描述的:
在viewDidLoad:
UIToolbar *inputToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneButtonTapped)];
[inputToolbar setItems:[NSArray arrayWithObject:doneButton]];
self.theTextView.inputAccessoryView = inputToolbar;
在doneButtonTapped
[self.view endEditing:YES];
【讨论】:
这就是我最终的结果。只需将按钮放在右侧:)以上是关于辞职第一响应者 UITextView。临时 UINavigationBar?的主要内容,如果未能解决你的问题,请参考以下文章
UITextField,辞职第一响应者时,导致文本的奇怪动画滚动