2016-08-26 3 views
0

Я работаю над приложением чата. Поле сообщения изменяется в соответствии с длиной текста, но текст выходит из окна при разрыве строки.UITextView текст выходит из строя

Print's

Я попытался добавить textView.contentInset = UIEdgeInsetsZero в textViewDidChange метод, но он по-прежнему не работает.

Функция:

func textViewDidChange(textView: UITextView) { 

    let minSize = CGFloat(50) 
    let maxSize = UIScreen.mainScreen().bounds.height - 50 - keyboardHeight 
    let expectedSize = textView.contentSize.height + 9 

    var newSize = expectedSize < minSize ? minSize : expectedSize 
    newSize = newSize > maxSize ? maxSize : newSize 

    acessoryViewH.constant = newSize 

    textView.contentInset = UIEdgeInsetsZero 
} 

В автоматической верстки ограничения:

Constraint's

ответ

0

Попробуйте добавить textView.layer.masksToBounds = true.

+0

Я извиняюсь, я редактировал ответ. Конечно, это 'masksToBounds'. –

+0

Спасибо, это частично правильно, но теперь вместо текста, выходящего из коробки, это с верхним разрезом. –

0

Попробуйте установить textView.clipsToBounds = true

+0

В настоящее время это метод viewDidLoad –

0

Добавьте этот код в textViewDidBeginEditing делегата. Это работа для меня.

textView.contentInset = UIEdgeInsetsZero; 

в viewDidload

[textView setClipsToBounds:YES];