Компоненты материалов MDCTextField, добавленный в Xcode Interface Builder, не принимает ввод пользователя
Я использовал Cocoapods для интеграции MaterialsComponents с новым проектом Xcode и ввел Xcode через рабочую область. Затем я создал очень простой интерфейс с одним UITextField, добавленным в main.storyboard. Я сделал сборку без ошибок, а простой интерфейс позволяет мне вводить данные в UITextField.
Затем, скопировав пример кода Google на уроке MDC-111, я преобразовал UITextField в MDCTextField, чтобы посмотреть, работает ли специальная обработка Material Design текстового поля (т. Е. Текст-заполнитель перемещается вверх при вводе текста). У меня не было ошибок сборки, и проект правильно встроен в симулятор, но не позволяет вводить текст. Нажатие на поле не выводит клавиатуру и не принимает текст. Я попытался изменить "Взаимодействие с пользователем включено" с Вкл. На Выкл. И обратно на Вкл без эффекта. Это мой код контроллера Swift View:
import UIKit
import MaterialComponents
class ViewController: UIViewController, UITextFieldDelegate {
@IBOutlet weak var helloText: MDCTextField!
// MARK: Properties
var helloController: MDCTextInputControllerOutlined?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
helloController = MDCTextInputControllerOutlined(textInput: helloText)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
1 ответ
Я закрываю этот Вопрос, потому что добрые люди на сайте GitHub Materials Components решили его. Для информации я установил ограничение "Высота" для текстового поля, которое было слишком маленьким, чтобы позволить поведению MDC работать. Снятие ограничения позволило расширить поле до полного рабочего размера.