Animation 在SwiftUI中显示动画SVG文件

Animation 在SwiftUI中显示动画SVG文件,animation,svg,swiftui,Animation,Svg,Swiftui,我试图在WatchKit SwiftUI项目中放入动画.svg图像。 不幸的是,我既找不到将svg转换为png“帧”的方法,也找不到直接将svg文件用作动画的方法。 有没有一种方法可以在SwiftUI中使用动画.svg图像?我不认为。svg是本机支持的。可能的解决办法: WebView应该能够加载它 转换为.pdf/.png/.jpeg 不确定WatchKit是否有一个非常简单的解决方案 但是,WatchKit有一个WKInterfaceImage.animateImage(带有:dura

我试图在WatchKit SwiftUI项目中放入动画.svg图像。 不幸的是,我既找不到将svg转换为png“帧”的方法,也找不到直接将svg文件用作动画的方法。
有没有一种方法可以在SwiftUI中使用动画.svg图像?

我不认为。svg是本机支持的。可能的解决办法:

  • WebView应该能够加载它
  • 转换为.pdf/.png/.jpeg
不确定WatchKit是否有一个非常简单的解决方案

但是,WatchKit有一个
WKInterfaceImage.animateImage(带有:duration:)
,它允许ImageView通过一组图像设置动画。 您仍然需要将SVG的帧转换为PDF/PNG/JPEG


这可能是一个很好的起点:

我不认为。svg是本机支持的。可能的解决办法:

  • WebView应该能够加载它
  • 转换为.pdf/.png/.jpeg
不确定WatchKit是否有一个非常简单的解决方案

但是,WatchKit有一个
WKInterfaceImage.animateImage(带有:duration:)
,它允许ImageView通过一组图像设置动画。 您仍然需要将SVG的帧转换为PDF/PNG/JPEG


这可能是一个很好的起点:

我已经找到了一个解决我的困境的方法,但它远远不是最佳的:

1。创建HTML页面以显示动画svg

<object data="file.svg" type="image/svg+xml"></object>
4。让图像接收计时器更新

Image(uiImage: self.animatedIcons[index])
   .resizable()
   .frame(width: 50, height: 50, alignment: .center)
   .onReceive(timer) { (_) in
        self.index = self.index + 1
        if self.index > self.animatedrIcons.count - 1 {
                self.index = 0
        }

我已经找到了解决我的困境的办法,但这远远不是最佳的:

1。创建HTML页面以显示动画svg

<object data="file.svg" type="image/svg+xml"></object>
4。让图像接收计时器更新

Image(uiImage: self.animatedIcons[index])
   .resizable()
   .frame(width: 50, height: 50, alignment: .center)
   .onReceive(timer) { (_) in
        self.index = self.index + 1
        if self.index > self.animatedrIcons.count - 1 {
                self.index = 0
        }

您必须包装一个SVGKit视图才能与SwiftUI一起使用;WatchKit中没有关于在WebView中执行此操作的教程。如何将动画(!)svg转换为pdf?我还没有在网上找到解决方案。不知怎的,我错过了WatchKit。谢谢你编辑我的FaceImage。我现在就去看看。你必须包装一个SVGKit视图才能与SwiftUI一起使用;WatchKit中没有关于在WebView中执行此操作的教程。如何将动画(!)svg转换为pdf?我还没有在网上找到解决方案。不知怎的,我错过了WatchKit。谢谢你编辑我的FaceImage。我现在就去看看。