SwiftUI添加不必要的“;“点-点-点”;创建动画文本
我正在用XCode中的SwiftUI为iPhone编写一个应用程序。 在其中一个视图中,有一个文本标签,每当按下按钮时,该标签都会更改其文本。 整个视图都是弹簧动画,因此每当通过按钮更改文本时,都会使用动画进行更改。 动画效果良好,除了在动画期间,文本标签会在文本末尾添加不必要的省略号。 我已尝试使用以下方法删除省略号:SwiftUI添加不必要的“;“点-点-点”;创建动画文本,swift,xcode,text,swiftui,ellipsis,Swift,Xcode,Text,Swiftui,Ellipsis,我正在用XCode中的SwiftUI为iPhone编写一个应用程序。 在其中一个视图中,有一个文本标签,每当按下按钮时,该标签都会更改其文本。 整个视图都是弹簧动画,因此每当通过按钮更改文本时,都会使用动画进行更改。 动画效果良好,除了在动画期间,文本标签会在文本末尾添加不必要的省略号。 我已尝试使用以下方法删除省略号: Text("text") .truncationMode(nil) 然而,这给出了一个错误。 有没有办法关闭文本标签中的“…”按钮? 如果没有,是否有一种方法可以仅关
Text("text")
.truncationMode(nil)
然而,这给出了一个错误。
有没有办法关闭文本标签中的“…”按钮?
如果没有,是否有一种方法可以仅关闭该文本标签的动画而不影响其他标签,因为整个视图都已设置动画?您可以使用文本(“文本”).animation(nil)
关闭动画
或者,您可以选择其他动画来阻止…
Text("text").animation(.spring(response: 0.0, dampingFraction:0.2))
您可以使用
minimumScaleFactor(\ufactor:CGFloat)
。文本将根据因子值收缩
例如,如果字体大小为10,系数为0.4,则如果需要,文本字体大小可以减小到4
Text(“Text”)
.最小比例因子(0.1)
试试这个:
struct UnAnimatedText: View {
private let text: String
init(_ text: String) {
self.text = text
}
var body: some View {
Button(action: {
}) {
Text(text)
.frame(maxWidth: .infinity)
.animation(nil)
}
.disabled(true)
}
}
文本将在没有动画的情况下更改,但未动画文本的帧-带有动画
.frame(maxWidth:.infinity)是可选的,其主要思想是使用按钮是否可以共享您的代码。请尝试以下操作:
.lineLimit(nil)
我已经搜索了很多关于此异常的信息。。这一行:“.frame(maxWidth:.infinity)”只起作用。非常感谢!