Есть ли способ остановить отображение текста в SwiftUI в виде эллипса? - PullRequest
1 голос
/ 17 июня 2020

У меня есть текстовое представление, которое динамически показывает различный текст в зависимости от значения переменной состояния. По мере того, как я перебираю значения, если новый текст длиннее старого, я на мгновение получаю эллипс (...) перед отображением нового текста. Код, в котором это происходит, выглядит так:

Text(flashModeDescription(flashMode: appSettings.flashMode))
                        .font(.body).foregroundColor(.white)
                        .opacity(flashModeDescVisible ? 1: 0)
                        .animation(.easeIn(duration: 0.25))

Текстовое представление является последним элементом в HStack.

1 Ответ

1 голос
/ 17 июня 2020

Это связано с определением анимации, поэтому следующее может исправить

Text(flashModeDescription(flashMode: appSettings.flashMode))
                        .font(.body).foregroundColor(.white)
                        .animation(nil)                        // << here !!
                        .opacity(flashModeDescVisible ? 1: 0)
                        .animation(.easeIn(duration: 0.25))

, поэтому анимация повлияет только на непрозрачность

...