Кирилл
?
Alexsandr
когда на onLayout получаешь размер, тебе нужно чтобы акардион был скрыл, на onLayout, ты получаешь height = 0
Кирилл
не совсем понятно зачем использовать onLayout
Alexsandr
а есть другие предложения ?)
Кирилл
что надо? чтобы вьюшка по тапу коллапсилась и обратно?) и чтобы высота подстраивалась под контент?)
Кирилл
и все это с анимацией?)
Alexsandr
да только, контент динамическую высоту имеет
Кирилл
щас, по-деревенски в саблайме набросаю пример)
Кирилл
ну что-то вроде того
Кирилл
высота undefined будет растягивать вьюху настолько насколько надо
Cenator 🐈
разве не auto?
Кирилл
undefined вполне достаточно)
Кирилл
ну и LayoutAnimation заимпортить из рн
Alexsandr
да работает
Кирилл
разве не auto?
такое вообще есть в РН?)
Cenator 🐈
такое вообще есть в РН?)
ну там же не андефайнд применяется к элементу, а дефолтное, верно?
Cenator 🐈
значит там auto стоит
Кирилл
ну вообще судя по тому, как это делается в андроиде, там нет понятия auto, скорее всего это интерпретируется как wrap_content у высоты лэйаута,
Cenator 🐈
можно попробовать initial еще
Cenator 🐈
я прост с дивана, негде потестить
Кирилл
жиза
Alexsandr
только, в scrollView
Alexsandr
анимации не будут работать
Alexsandr
эффект будет резким
Миша
Раз такая тема, может знаете, как кнопку show more сделать нормально?
Alexsandr
https://snack.expo.io/rJwEf9wCz - @KirillGudkovv
Alexsandr
все вопрос отпал) спасибо)
Кирилл
все вопрос отпал) спасибо)
У меня все равно там еще очередь, ну да ладно, на здоровье)
Миша
https://snack.expo.io/rJyfXcv0z
Это очень не нормально
Alexsandr
Это очень не нормально
ты просил пример, вот тебе и сделали, а дальше марафет ты и сам сможешь навести, в чем проблема ?
Миша
Надо чтобы было видно 2 строки, и кнопка. Если строк меньше чем две или вторая неполная, то кнопку показывать не надо.
Кирилл
да то же самое
Миша
Миша
Или я очень туплю
Alexsandr
щас сделаю тебе
Кирилл
ну че нет то, ты значешь высоту строки текста? - да, умножаешь на 2. Вот тебе число с которым надо сравнивать при рендере кнопки, если оно >= рендерить, если нет то не рендерить
Кирилл
это же на ладошке лежит)
Кирилл
а по нажатию то, что я описал выше
Миша
Как узнать высоту строки?
Alexsandr
через размер шрифта
Миша
Как?
Кирилл
ты можешь ее руками забить какую тебе надо в стилях lineHeight, и тогда ты будешь точно нать)
Alexsandr
ну дефотный шрифт у тебя 14 = 34
Кирилл
там что-то около 30 на 14ом
Кирилл
на глаз
Alexsandr
там запас по 2пт
Кирилл
+ пэддинги
Alexsandr
сверху и снизу
Alexsandr
если задавал
Alexsandr
@KirillGudkovv, спасибо за подсказку) с layoutanimations)
Alexsandr
ладно я спать завтра на работу
Миша
Бля, слишком костыльно как-то и если вторая строка с небольшим количеством текста, то тоже будет неправильно работать
Миша
И чтобы узнать высоту надо рендер, а в этом случае будут скачки контента
Кирилл
чтобы текст не обрубался уродливо, у него есть пропс numberOfLines, указываешь два и он ставит многоточие если не влезает во вьюху, делаешь этот пропс переменным
Кирилл
да не должны быть, если все ровно сделаешь)
Кирилл
РН конечно лагающий, но не на столько)
Миша
чтобы текст не обрубался уродливо, у него есть пропс numberOfLines, указываешь два и он ставит многоточие если не влезает во вьюху, делаешь этот пропс переменным
Нет, это тоже не подходит, я не могу узнать, надо ли рендериь кнопку или нет, пока не получу весь размер текста
Миша
да не должны быть, если все ровно сделаешь)
Это не лаги, это просто рендер экрана с разным контентом
Alexsandr
так подкрути анимации с opacity
Alexsandr
и показывай кноку только там где надо)
Кирилл
как вариант
Миша
так подкрути анимации с opacity
Появляющаяся кнопка тоже такое себе поведение, кароче я хз как это делается
Миша
В инстаграмме, например
Demuz
И чтобы узнать высоту надо рендер, а в этом случае будут скачки контента
Не нужно. Просто маленькую формулу напишите, которая расчитывает размер строки исходя из размера шрифта, если это нужно.
Demuz
Ну тогда только символы считайте. 😁
Ilias
Всем привет! Подскажите, пожалуйста. Есть ли на русском книжка Programming React Native автор Dotan Nahum?
Demuz
Вам кнопка типа читать далее нужна же? Show more и тому подобное?
Миша
Да
Demuz
Ну все, if символов более n, кнопка есть, else кнопки нет.
Demuz
А в чем проблема то так сделать?
Миша
А n это сколько? Как я узнаю, сколько символов помещается на одну строку?