我正在尝试使用键盘编辑单元格内的UITextView,以保留' return'换行的关键&添加'取消' &安培; '完成'附件工具栏中的按钮。一切看起来都不错,但发件人'选择器中的参数指向UIBarButtonItem而不是单元格中的UITextView,因此程序会因错误而中断。如何告知所选单元格的UITextView resignFirstResponder?
// cell with accessory toolbar
if (!cell)
{
[tableView registerNib: [UINib nibWithNibName:@"CustomCell" bundle:nil] forCellReuseIdentifier:@"CustomCell"];
cell = [tableView dequeueReusableCellWithIdentifier:@"CustomCell"];
[cell.textView setDelegate:self];
UIToolbar* toolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];
toolBar.barStyle = UIBarStyleBlackTranslucent;
toolBar.items = [NSArray arrayWithObjects:
[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(toolBarCancel:)],
[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],
[[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(toolBarDone:)],
nil];
[toolBar sizeToFit];
cell.textView.inputAccessoryView = toolBar;
// selector
- (IBAction) toolBarDone:(id)sender {
[sender resignFirstResponder];
}
答案 0 :(得分:0)
self.view.endEditing(true)
或
[self.view endEditiing:YES];
来自Apple的文档:
此方法查看当前视图及其子视图层次结构 当前第一个响应者的文本字段。如果找到一个, 它要求文本字段作为第一响应者辞职。如果力量 参数设置为YES,甚至不询问文本字段;它是 被迫辞职。
这是用于使键盘掉落的goto功能,无论是什么视图都可以使用。