我已经引用了这个并尝试了最佳答案。但是我仍然无法扩展MDCTextInputControllerOutlinedTextArea
. 这是我正在使用的代码:
class CreateAnswerViewController: UIViewController, MDCMultilineTextInputDelegate, MDCMultilineTextInputLayoutDelegate {
let answerTextField: MDCMultilineTextField = {
let field = MDCMultilineTextField()
field.translatesAutoresizingMaskIntoConstraints = false
return field
}()
var answerTextInputController: MDCTextInputControllerOutlinedTextArea
required init?(coder aDecoder: NSCoder) {
self.answerTextInputController = MDCTextInputControllerOutlinedTextArea(textInput: self.answerTextField)
self.answerTextInputController.activeColor = ApplicationScheme.instance.containerScheme.colorScheme.onBackgroundColor
self.answerTextInputController.normalColor = ApplicationScheme.instance.containerScheme.colorScheme.onBackgroundColor
self.answerTextInputController.placeholderText = "Answer"
super.init(coder: aDecoder)
}
override func viewDidLoad() {
self.answerTextField.multilineDelegate = self
self.answerTextField.clearButtonMode = .never
self.answerTextField.cursorColor = ApplicationScheme.instance.containerScheme.colorScheme.onBackgroundColor
self.answerTextField.textColor = ApplicationScheme.instance.containerScheme.colorScheme.onBackgroundColor
self.answerTextField.becomeFirstResponder()
self.view.addSubview(answerTextField)
self.answerTextField.topAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.topAnchor, constant: 65).isActive = true
self.answerTextField.leadingAnchor.constraint(equalTo:
self.view.safeAreaLayoutGuide.leadingAnchor, constant: 10).isActive = true
self.answerTextField.bottomAnchor.constraint(equalTo:
self.answerTextField.inputAccessoryView?.topAnchor ??
self.view.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
self.view.safeAreaLayoutGuide.trailingAnchor.constraint(equalTo:
self.answerTextField.trailingAnchor, constant: 10).isActive = true
}
}
理想情况下,我希望文本区域的边框扩展到弹出的键盘顶部,但我什至不确定如何像帖子建议的那样增加边框的高度,更不用说将它增加到顶部的高度的键盘。如果我查看实际文本输入字段的背景颜色,那么我可以看到它实际上延伸到了 ui 视图容器的底部,但边框没有。我怎样才能修复它以便调整高度?