我如何添加 doneaction 并更改完成的文本?
How do i add doneaction and change the done text?
我正在使用 IQKeyboardManager 并为完成按钮添加了自定义操作
txtfield.addDoneOnKeyboard(withTarget: self, action: #selector(doneButtonClicked), titleText: "Next")
IQKeyboardManager.shared().toolbarDoneBarButtonItemText = "Next"
@objc func doneButtonClicked(_ sender: Any) {
// do stuff
}
此处调用了操作,一切正常。但是完成按钮的标题是完成(蓝色)。
"Next" 在键盘中间显示为标题文本。如何更改完成按钮的 text/color?如果我不向任何特定的文本字段添加任何操作,则第二行可以完美运行,但每当我添加操作时,完成按钮的自定义名称将被忽略。
有什么帮助吗?
试试这个。
- 导入 IQKeyboardManagerSwift
- IQKeyboardManager.shared.toolbarDoneBarButtonItemText = "NEXT"
见下图 Xcode 10.1 中有 NEXT 按钮。
使用以下内容:
let config = IQBarButtonItemConfiguration(title: "Next", action: #selector(doneButtonClicked))
txtfield.addKeyboardToolbar(withTarget: self, titleText: nil , rightBarButtonConfiguration: config, previousBarButtonConfiguration: nil, nextBarButtonConfiguration: nil)
// any color you like
txtfield.keyboardToolbar.doneBarButton.setTitleTextAttributes([NSAttributedString.Key.foregroundColor: UIColor.red], for: UIControl.State.normal)
而不是:
txtfield.addDoneOnKeyboard(withTarget: self, action: #selector(doneButtonClicked), titleText: "Next")
还有什么? titleText
集 toolbar.titleBarButton.title
.
我从这里的 IQKeyboardManager
源代码中挑选了一些代码片段:
//Title button
toolbar.titleBarButton.title = titleText
而 toolbarDoneBarButtonItemText
集合的 doneBarButton.title
此处 IQKeyboardManager
的一些代码片段:
if let rightConfig = rightBarButtonConfiguration {
var done = toolbar.doneBarButton
if rightConfig.barButtonSystemItem == nil && done.isSystemItem == false {
done.title = rightConfig.title
done.image = rightConfig.image
done.target = target
done.action = rightConfig.action
}
我正在使用 IQKeyboardManager 并为完成按钮添加了自定义操作
txtfield.addDoneOnKeyboard(withTarget: self, action: #selector(doneButtonClicked), titleText: "Next")
IQKeyboardManager.shared().toolbarDoneBarButtonItemText = "Next"
@objc func doneButtonClicked(_ sender: Any) {
// do stuff
}
此处调用了操作,一切正常。但是完成按钮的标题是完成(蓝色)。
"Next" 在键盘中间显示为标题文本。如何更改完成按钮的 text/color?如果我不向任何特定的文本字段添加任何操作,则第二行可以完美运行,但每当我添加操作时,完成按钮的自定义名称将被忽略。
有什么帮助吗?
试试这个。
- 导入 IQKeyboardManagerSwift
- IQKeyboardManager.shared.toolbarDoneBarButtonItemText = "NEXT"
见下图 Xcode 10.1 中有 NEXT 按钮。
使用以下内容:
let config = IQBarButtonItemConfiguration(title: "Next", action: #selector(doneButtonClicked))
txtfield.addKeyboardToolbar(withTarget: self, titleText: nil , rightBarButtonConfiguration: config, previousBarButtonConfiguration: nil, nextBarButtonConfiguration: nil)
// any color you like
txtfield.keyboardToolbar.doneBarButton.setTitleTextAttributes([NSAttributedString.Key.foregroundColor: UIColor.red], for: UIControl.State.normal)
而不是:
txtfield.addDoneOnKeyboard(withTarget: self, action: #selector(doneButtonClicked), titleText: "Next")
还有什么? titleText
集 toolbar.titleBarButton.title
.
我从这里的 IQKeyboardManager
源代码中挑选了一些代码片段:
//Title button
toolbar.titleBarButton.title = titleText
而 toolbarDoneBarButtonItemText
集合的 doneBarButton.title
此处 IQKeyboardManager
的一些代码片段:
if let rightConfig = rightBarButtonConfiguration {
var done = toolbar.doneBarButton
if rightConfig.barButtonSystemItem == nil && done.isSystemItem == false {
done.title = rightConfig.title
done.image = rightConfig.image
done.target = target
done.action = rightConfig.action
}