提问者:小点点

有办法阻止SwiftUI文本显示椭圆吗?


我有一个文本视图,它根据状态变量的值动态显示不同的文本。 当我循环遍历这些值时,如果新文本比旧文本长,我会得到一个椭圆(。。。) 在显示新文本之前。 经历这种情况的代码如下所示:

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

文本视图是HStack中的最后一项。


共1个答案

匿名用户

这是由于定义了动画造成的,因此下面可以修复

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

所以动画只影响不透明度