0

В моей раскадровке У меня есть UIViewController, который содержит вид изображения и вид текста:Как я могу расширить размер UITextView, когда пользователь начнет вводить его?

enter image description here

В моем классе я уже обрабатывать водопроводный жест - когда пользователь нажимает в любом месте за пределами представления текста - клавиатура исчезает:

override func viewDidLoad(){ 
    super.viewDidLoad() 

    let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "dismissKeyboard") 
    view.addGestureRecognizer(tap) 

} 

func dismissKeyboard() { 
    view.endEditing(true) 
} 

Теперь, как вы можете видеть на моем скриншоте, TextView довольно низок, поэтому, когда пользователь нажимает ее и появляется клавиатура - она ​​охватывает часть самого TextView. Я хотел бы либо переместить его, чтобы он был более заметным над клавиатурой, либо - желательно, если это возможно - на время редактирования - расширить размер текстового вида, чтобы он покрывал остальную часть экрана (и возвращается к нормальному размер после того, как пользователь закончил редактирование). Можете ли вы мне помочь?

+0

Чтобы показать текстовое изображение при использовании клавиатуры, вы должны использовать scrollview и в scrollview добавить изображение и текстовое представление, а затем использовать метод уведомления по клавиатуре для отображения текста. – riddhi

+0

вы можете следовать этому http://stackoverflow.com/questions/29431968/how-to-adjust-the-height-of-a-textview-to-his-content-in-swift. – Sahil

ответ

1

Я думаю, что лучше всего поместить ваш View над клавиатурой. Here's ответ, как это сделать.

+0

Спасибо, это выглядит разумно! Еще одна вещь - глядя на код в этом ответе - есть ли способ отличить, присутствует ли клавиатура или нет? В настоящее время, когда клавиатура появляется, экран перемещается вверх, но когда я нажимаю, чтобы скрыть ее достаточно быстро, экран становится темным в той части, где была клавиатура. Это именно то, что написал @jonprasetyo - есть ли у вас какие-либо подсказки, как я могу проверить, присутствует ли клавиатура или нет? – user3766930

+0

Ты прав. Чтобы избежать такого сценария, вы можете настроить требуемый «Bool isKeyboardShown», добавив эти два уведомления. 'UIKeyboardDidShowNotification' и' UIKeyboardDidHideNotification' –