через его height. Задаю размер wrapcontent и от 0 до размера. Но после анимации от размера до 0, новый размер не пересчитывается, он идёт как 0. Кто-то сталкивался?
Анимируй до 1 пикселя, если некогда разбираться /мастер костыльшик 6 разряда/
Спксибо. А потом gone можно ставить? Пересчитано обратно когда в params.height wrap content запишу?
Я не понимаю что здесь происходит до конца, но подозреваю, что при обратной анимации требуется высота wrap content, которую не получить сразу после установки wrap content в layout params ибо надо ждать layout pass
Погоди... То есть, анимация от 0 до нужного размера тупо не работает?
Я делаю пересчет размера для view
Проблема в том, что если я анимирую первый раз от 0 до полученного после пересчёта размера, то все хорошо, но когда я уменьшаю высоту view обратно, новая анимация не работает, если размер предварительно не сохранить. Я бы и хранил, но добавляю новые чипсы и хотелось бы красиво анимировать увеличение viewgroup height. А оно после первого вызова даёт только 0 для последующих.
Каким образом задаётся анимация?
valueanimator
Measure делаю
Вот код https://pastebin.com/fVxTZtS2
Может быть, попробовать property animator, чтобы он сам это делал с height?
Спасибо, попробую. Но проблема только в том, что новая высота не даётся числом, сама анимация то работает🤷♂ Думал, вдруг кто сталкивался. Попробую до 1 пикселя уменьшать
Кстати, а не может быть так, что аниматоры конфликтуют на focus true/false?
Не, анимация останавливается и разворачивается в обратную сторону, я проверял. И это не только с фокусом. Есть viewgroup, туда программно добавляю view, так же если при удалении до 0 высоту анимировать, потом 0 даёт как размер🤷♂
Просто я вижу два независимых аниматора, которые создаются в листенере каждый раз. То есть, есть шанс, что при быстрой смене фокуса может случиться интересное 😏
Обсуждают сегодня