多个文本字段的键盘工具栏

Keyboard toolbar for multiple textFields

在我的项目中,一些 viewController 有多个文本字段,
我找到了如何在键盘上方添加一个带有 "Ok" 按钮的工具栏,以便在点击该按钮时隐藏键盘。
我使用的代码如下:

UIBarButtonItem *flex = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:_destField action:@selector(resignFirstResponder)];
UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 34)]; 
toolbar.items = [NSArray arrayWithObjects:flex, barButton, nil];    
_destField.inputAccessoryView = toolbar;

如何在同一视图控制器中轻松重用此代码?
"target" 使这变得困难,有没有为每个文本字段创建工具栏的方法?

谢谢!

如果此代码在视图控制器中,则有一个简单的解决方案。将 barButton 更改为如下内容:

UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dismissKeyboard)];

然后将此方法添加到视图控制器:

- (void)dismissKeyboard {
    [self.view endEditing:YES];
}

无论显示什么视图,这都会关闭键盘。

现在您可以将该工具栏重新用作视图控制器中任何文本 field/view 的 inputAccessoryView