ios - 如何在 UISearchBar 中从自定义 inputView 动态更改为默认 inputView?

标签 ios cocoa-touch

在我的应用程序中,我需要在 UISearchBar 中创建自定义 inputView(键盘)。

我想做如下图。

第一张图是默认输入键盘(英文)

enter image description here

第二张图是自定义键盘。

enter image description here

当我点击默认(英文)键盘的 inputAccessoryView 按钮时,我想做的是,我想切换到我的自定义输入 View (下图)。当我再次点击 inputAccessoryView 按钮时,我想隐藏我的自定义键盘并更改为默认键盘。

我不知道该怎么做。

请帮帮我。

最佳答案

UISearchBar API 不允许您正式访问其文本字段的 inputView。但是您可以通过查找文本字段来获得此类访问权限,如下所示:

for (UIView* v in searchBar.subviews) {
    if ([v isKindOfClass: [UITextField class]]) {
        UITextField* tf = (UITextField*)v;
        tf.inputView = //...
        break;
    }
}

关于ios - 如何在 UISearchBar 中从自定义 inputView 动态更改为默认 inputView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14662167/

相关文章:

ios - 属性 'scrollView' 需要定义方法 '-scrollView' - 使用@synthesize、@dynamic 或提供方法实现?

ios - Xcode 7.1 - libicucore.dylib(没有这样的文件或目录)

python - 如何在 swift 3 中集成 CoreML iOS 项目的自定义数据模型

iphone - 在 View 中添加弹出窗口

cocoa-touch - 更改 Cocoa 单元测试的系统日期

iphone - 在 iPhone 上调试 applicationDidReceiveMemoryWarning 的最佳方法?

ios - 如何修复 C-style for statement has been removed in Swift 3?

ios - 在 iOS 中将电子邮件/密码保存到钥匙串(keychain)

iphone - 如何在 iPad 中将 UIModalPresentationFormSheet 与 NavigationController 一起使用?

iphone - 为 iPhone 本地化带有文本的图像的最佳方法是什么?