Добрый день. Есть textView на первом экране и введенный текст передается на другой экран CollectionViewController, где на Item закреплен также textView.
Нужно, чтобы элемент коллекции принимал определенное количество строк (например 5), а если введеный текст содержит больше, то добавлять элементы в коллекцию, которые будут вмещать оставшийся текст также по 5 строк.
Подскажите, как это можно реализовать.
Как принимать текст, разбивая его, по определенному количеству строк?
rool961
#1
RexHunt
#2
Сперва разделите весь текст на массив строк
let stringsArray = text.components(separatedBy: "\n")
далее разбейте массив строк на нужное кол-во частей
let size = 5
let chunksArray = stride(from: 0, to: stringsArray.count, by: size ).map {
Array(stringsArray [$0 ..< Swift.min($0 + size , stringsArray.count)])
}
rool961
#3
Нужно, чтобы именно в элементе коллекции было не больше 5 строк, т.к. поменяв стиль текста в элементе коллекции количество строк может измениться
RexHunt
#4
Это у вас какое-то тестовое задание или вам так захотелось сделать?
Просто я пока не пойму для чего это нужно.
RexHunt
#6
Возможно все. Зависит только от гемороя, с которым придется столкнуться.
Вот, пожалуйста
https://developer.apple.com/forums/thread/126427