swiftui - 如何修复适用于 SwiftUI 中文本的动画制作帧问题/错误?
问题描述
我想在文本视图上使用弹簧动画,但动画改变了这个视图的不必要的东西,这使得某些部分因为这个问题/错误而被剪掉。为了保守起见,我制作了一个带有背景颜色的精确文本视图,另一个没有!如您所见,弹簧动画应该只使用视图的位置或偏移量,而不是帧的大小!或者可能是因为在位置相同的情况下改变了偏移量。我坚信这是一个错误。我可以让我自己的自定义弹簧动画效果比这更好,但我想知道有什么办法可以解决这个问题吗?
PS:我发现Text上的各种动画都有这个问题!
struct ContentView: View {
@State var stringForText: String = String()
var body: some View {
Button("add") { stringForText += "?"}.padding()
Text(stringForText).font(.largeTitle).bold().padding().animation(.spring(response: 1, dampingFraction: 0.01, blendDuration: 1))
Text(stringForText).font(.largeTitle).bold().background(Color.yellow).padding().animation(.spring(response: 1, dampingFraction: 0.01, blendDuration: 1))
}
}
解决方案
推荐阅读
- c# - C# 可选参数:为什么我可以在接口和派生类上定义不同的默认值?
- amazon-web-services - AWS CodeDeploy 在 Windows Server 2016 上的 ApplicationStop 之前挂起
- excel - VBA按名称查找列,如果超过一定范围,则参考值需要更新
- azure - Azure Blob 存储生命周期管理
- excel - Excel Range.FillDown 使用 EPPlus
- webpack - 创建 React App + Webpack 只显示空白页
- android - 这个命令是什么意思:EGLExt.eglPresentationTimeANDROID(mEGLDisplay, mEGLSurface, when)?
- xml - 使用 xpath 仅获取属性值
- c# - 生成在后台调用方法的属性
- angular - 如何在 Angular 中处理 HTTP 302