希望将此代码转换为纯SwiftUI代码。没有自动布局,没有UIViewRepresentable,没有UIHostingController 代码正在运行,希望转换为纯SwiftUI代码。如果没有UIViewRepresentable,UIHostingController请告诉我如何实现。谢谢*

希望将此代码转换为纯SwiftUI代码。没有自动布局,没有UIViewRepresentable,没有UIHostingController 代码正在运行,希望转换为纯SwiftUI代码。如果没有UIViewRepresentable,UIHostingController请告诉我如何实现。谢谢*,swiftui,swiftui-list,swiftui-navigationlink,swiftui-environment,swiftui-form,Swiftui,Swiftui List,Swiftui Navigationlink,Swiftui Environment,Swiftui Form,结构路径动画视图:UIViewRepresentable其中内容:视图{ var path: Path let content: () -> Content func makeUIView(context: UIViewRepresentableContext<PathAnimatingView>) -> UIView { let view = UIView(frame: .zero) let animation = CAKeyframeAnimat

结构路径动画视图:UIViewRepresentable其中内容:视图{

var path: Path
let content: () -> Content

func makeUIView(context: UIViewRepresentableContext<PathAnimatingView>) -> UIView {

    let view = UIView(frame: .zero)

    let animation = CAKeyframeAnimation(keyPath: #keyPath(CALayer.position))
    animation.duration = CFTimeInterval(10)
    animation.repeatCount = 10
    animation.path = path.cgPath
    animation.keyTimes = [0.0,0.5,1.0]
    animation.isRemovedOnCompletion = true
    animation.fillMode = .forwards
    animation.timingFunction = CAMediaTimingFunction(name: .linear)

    let sub = UIHostingController(rootView: content())
    sub.view.translatesAutoresizingMaskIntoConstraints = false

    view.addSubview(sub.view)
    sub.view.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
    sub.view.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true

    view.layer.add(animation, forKey: "snake")
    return view
}

func updateUIView(_ uiView: UIView, context: UIViewRepresentableContext<PathAnimatingView>) {
    print(uiView)
}
var路径:路径
让内容:()->内容
func makeUIView(上下文:UIViewRepresentableContext)->UIView{
let view=ui视图(帧:.0)
让动画=关键帧动画(关键路径:#关键路径(CALayer.position))
animation.duration=CFTimeInterval(10)
animation.repeatCount=10
animation.path=path.cgPath
animation.keyTimes=[0.0,0.5,1.0]
animation.isRemovedOnCompletion=true
animation.fillMode=.forwards
animation.timingFunction=CAMediaTimingFunction(名称:。线性)
let sub=UIHostingController(rootView:content())
sub.view.translatesAutoResizezingMaskintoConstraints=false
view.addSubview(sub.view)
sub.view.centerYAnchor.constraint(等式:view.centerYAnchor).isActive=true
sub.view.centerXAnchor.constraint(等于:view.centerXAnchor).isActive=true
view.layer.add(动画,forKey:“蛇”)
返回视图
}
func updateUIView(uiView:uiView,context:UIViewRepresentableContext){
打印(uiView)
}
}