隐藏iOS 9中自定义键盘扩展名上方的工具栏

在iOS 9的iOS 9中,键盘上方有一个工具栏(称为快捷方式栏),提供撤消,重做和粘贴按钮.它在使用系统键盘或第三方键盘时出现,但它不会出现在表情符号键盘上方.我的自定义键盘扩展程序正在使用时,我不希望此工具栏可见,因为我的键盘类似于表情符号键盘. (请注意,我所说的是可以在任何应用中使用的自定义键盘扩展,而不是当文本字段成为您自己应用中的第一响应者时显示键盘.)那么如何删除它呢?

解决方法

您可以使用此删除
- (void)textFieldDidBeginEditing:(UITextField*)textField
{
    if(SYstem_VERSION_GREATER_THAN(@"8.4")){
        UITextInputAssistantItem* item = [textField inputAssistantItem];
        item.leadingBarButtonGroups = @[];
        item.trailingBarButtonGroups = @[];
    }
}

当然,您需要在标头中定义宏SYstem_VERSION_GREATER_THAN以检查版本,因为此代码会在iOS 8上崩溃您的应用程序

#define SYstem_VERSION_GREATER_THAN(v)              ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)

玩得开心 :)

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...