【问题标题】:Keyboard toolbar for multiple textFields多个文本字段的键盘工具栏
【发布时间】:2016-04-16 16:54:58
【问题描述】:

在我的项目中,一些视图控制器有多个文本字段,
我找到了如何在键盘上方添加一个带有“确定”按钮的工具栏,以便在点击按钮时隐藏键盘。
我使用的代码如下:

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;

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

谢谢!

【问题讨论】:

    标签: ios objective-c uitextfield uitoolbar


    【解决方案1】:

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

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

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

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

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

    现在您可以将该工具栏作为inputAccessoryView 重复用于视图控制器中的任何文本字段/视图。

    【讨论】:

    • 它运行良好!谢谢!我也将在获得授权后立即接受您的回答:)
    猜你喜欢
    • 2018-12-23
    • 1970-01-01
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    • 2019-10-04
    相关资源
    最近更新 更多