iOS 8.0 или выше
GrowingTextView доступен через CocoaPods. Чтобы установить его, просто добавьте следующую строку в свой подфайл:
Свифт 5.0
pod ' GrowingTextView ' , '0.7.2'
Свифт 4.2
pod ' GrowingTextView ' , '0.6.1'
Свифт 4.1
pod ' GrowingTextView ' , '~> 0.5'
Свифт 3
pod ' GrowingTextView ' , '~> 0.4'
Swift 2.3 (обновление прекращено с сентября 2016 г.)
pod ' GrowingTextView ' , :git => 'https://github.com/KennethTsang/GrowingTextView.git' , :branch => 'swift2'
GrowingTextView также доступен через Carthage. Чтобы установить его, добавьте следующую строку в свой Cartfile:
Свифт 5.0
github "KennethTsang/ GrowingTextView " ~> 0.7
Свифт 4.2
github "KennethTsang/ GrowingTextView " ~> 0.6
Свифт 4.1
github "KennethTsang/ GrowingTextView " ~> 0.5
Свифт 3
github "KennethTsang/ GrowingTextView " ~> 0.4
Swift 2.3 (обновление прекращено с сентября 2016 г.)
github "KennethTsang/ GrowingTextView " "swift2"
Скопируйте GrowingTextView .swift
в свой проект.
Пример
GrowingTextView — это просто текстовое представление. Загрузите пример, чтобы узнать, как использовать его в качестве панели инструментов ввода, как и другие приложения для обмена мгновенными сообщениями.
Программное использование GrowingTextView
let textView = GrowingTextView ( )
textView . delegate = self
addSubview ( textView )
Использование GrowingTextView в раскадровке
Иногда контроллер представления может автоматически неправильно настроить вставку текстового представления. Чтобы избежать этого, установите для параметра automaticallyAdjustsScrollViewInsets
значение false
override func viewDidLoad ( ) {
super . viewDidLoad ( )
automaticallyAdjustsScrollViewInsets = false
}
Параметр | Тип | Описание | По умолчанию |
---|---|---|---|
максимальная длина | Int | Максимальная длина текста. Лишний текст будет обрезан. 0 означает отсутствие ограничений. | 0 |
TrimWhiteSpaceWhenEndEditing | Бул | Обрезайте пробелы и символы новой строки, когда текстовое представление завершило редактирование. | истинный |
заполнитель | Нить? | Текст заполнителя. | ноль |
заполнительЦвет | UIColor | Цвет текста заполнителя. | UIColor(белый: 0,8, альфа: 1,0) |
атрибут-заполнитель | NSAttributedString? | Приписанный текст заполнителя. | ноль |
минВысота | CGFloat | Минимальная высота текстового представления. | 0,0 |
МаксХайт | CGFloat | Максимальная высота текстового представления. | 0,0 |
textView . maxLength = 140
textView . trimWhiteSpaceWhenEndEditing = false
textView . placeholder = " Say something... "
textView . placeholderColor = UIColor ( white : 0.8 , alpha : 1.0 )
textView . minHeight = 25.0
textView . maxHeight = 70.0
textView . backgroundColor = UIColor . whiteColor ( )
textView . layer . cornerRadius = 4.0
GrowingTextView Delegate
вместо UITextViewDelegate. class ViewController : UIViewController , GrowingTextView Delegate {
func textViewDidChangeHeight ( _ textView : GrowingTextView , height : CGFloat ) {
UIView . animate ( withDuration : 0.2 ) {
self . view . layoutIfNeeded ( )
}
}
}
GrowingTextView Delegate
унаследован от UITextViewDelegate. Вы можете использовать функцию делегата как обычный UITextView.
class ViewController : UIViewController , GrowingTextView Delegate {
func textViewDidChange ( _ textView : UITextView ) {
...
}
func textViewDidEndEditing ( _ textView : UITextView ) {
...
}
}
Ознакомьтесь с UITextViewDelegate здесь: https://developer.apple.com/reference/uikit/uitextviewdelegate.
Кеннет Цанг, [email protected]
GrowingTextView доступен по лицензии MIT. Дополнительную информацию смотрите в файле ЛИЦЕНЗИИ.