#flutter #flutter-layout #flutter-animation
#flutter #flutter-макет #flutter-анимация
Вопрос:
У меня есть RaisedButton, в котором есть дочерний текст и некоторые отступы внутри. Когда я нажимаю кнопку, я использую AnimatedBuilder и контейнер для изменения размера ширины контейнера, чтобы отобразить индикатор загрузки.
return Container(
height: widget.height,
width: lerpWidth(widget.width, minWidth, _animation.value),
)
Теперь проблема в том, что я не хочу использовать фиксированную ширину для своего контейнера, поскольку текст может зависеть от длины (переводы, отображение чисел, ..). Если бы моя переданная длина строки была больше, контейнер не масштабировался бы вместе с ней. Я также не хочу, чтобы моя кнопка расширяла всю ширину экрана.
Итак, в основном я хочу расширить свою кнопку до минимальной ширины дочернего элемента (включая заполнение) и использовать эту ширину для анимации контейнера, чтобы показать CircularProgressIndicator
Комментарии:
1. вы не можете использовать
AnimatedSize
?2. AnimatedSize поставил бы меня перед той же проблемой, что и мне, поскольку мне также нужно было бы передать начальный размер. Я хотел бы перенести свой контент (как в родном Android) или мне нужно выполнить некоторые предварительные вычисления?
3. В принципе, я не хочу передавать начальное значение ширины и высоты. Я хочу, чтобы размер моей кнопки зависел от заданного содержимого (текста), а при нажатии анимируйте ее в виде круга, чтобы показать индикатор. После завершения загрузки он должен анимироваться обратно к исходному значению.