这对我来说是非常奇怪的bug或问题!我有一个红色的Rectangle(),用户点击一下就可以旋转,然后我的Rectangle()有一个阴影视图。在旋转之后,Rectangle()有一个以上的阴影视图,它们被渲染到彼此之上,并且不工作!这对我来说是不合逻辑的,为什么会发生这种情况?.shadow必须只返回1个视图,但在本例中,为角度(度: 0)返回多个视图,如果开始时大于0,则一切正常,例如,使用这个:角度(度: 10)。一旦你启动应用程序的角度(度数: 0),它将无法工作!
struct ContentView: View {
@State var rotationAngle: Angle = Angle(degrees: 0) //← Here
var body: some View {
Rectangle()
.fill(Color.red)
.frame(width: 200, height: 100, alignment: .center)
.rotationEffect(rotationAngle)
.onTapGesture
{
rotationAngle += Angle(degrees: 10)
}
.shadow(color: Color.black, radius: 10, x: 0, y: 20)
}
}这是我对临时使用的拯救:
.rotationEffect(rotationAngle == Angle(degrees: 0) ? Angle(degrees: 0.001) : rotationAngle)你的是什么?
发布于 2020-11-19 05:21:10
这个问题已经在Xcode12.1/ iOS 14.1中解决了,这是旧版本的一个错误。
https://stackoverflow.com/questions/64582427
复制相似问题