如何隐藏IQKeyboardManager中的工具栏iOS Swift 3

我正在使用IQKeyboardManger库在使用键盘开始键入时滚动文本字段,但我不想显示其库中的默认工具栏。 以下是我用过的代码。

override func viewDidLoad() { super.viewDidLoad() self.chatTextField.inputAccessoryView = [[UIView alloc] init]; //This will remove toolbar which have done button. self.chatTextField.keyboardDistanceFromTextField = 8; //This will modify default distance between textField and keyboard. For exact value, please manually check how far your textField from the bottom of the page. Mine was 8pt. } 

在这里输入图像说明

您可以在属性下面设置IQKeyboardManager。

我假设你已经在didFinishLaunch中启用了应用程序委托的IQKeyboardManager

  IQKeyboardManager.sharedManager().enable = true 

shouldShowTextFieldPlaceholderfalse ==>如果要隐藏占位符工具栏部分

shouldHidePreviousNext false ==>如果你想隐藏next和prevbutton等等。

您可以像这样启用AppDelegate的didFinishLaunch中的设置

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager().enableAutoToolbar = false IQKeyboardManager.sharedManager().shouldShowTextFieldPlaceholder = false IQKeyboardManager.sharedManager().shouldHidePreviousNext = false return true } 

您可以启用或禁用didFinishLaunchingWithOptions中的工具栏:

 IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager.enableAutoToolbar = false 

有关更多信息,请参阅属性和函数用法

Swift 3如果在UITextField / UITextView之外触摸,您必须使用shouldResignOnTouchOutsideshouldResignOnTouchOutside textField。

如果你希望在一个特定的ViewController或者在AppDelegate文件中覆盖所有的应用程序,可以在你的ViewController添加它。

方法里面:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager().enableAutoToolbar = false IQKeyboardManager.sharedManager().shouldShowToolbarPlaceholder = false IQKeyboardManager.sharedManager().shouldResignOnTouchOutside = true }