wake-ios/wake/Views/Utils/SVGImage.swift
2025-08-19 13:59:03 +08:00

36 lines
1.2 KiB
Swift

import SwiftUI
import WebKit
struct SVGImage: UIViewRepresentable {
let svgName: String
func makeUIView(context: Context) -> WKWebView {
let webView = WKWebView()
webView.isOpaque = false
webView.backgroundColor = .clear
webView.scrollView.isScrollEnabled = false
// SVG
if let url = Bundle.main.url(forResource: svgName, withExtension: "svg") {
print("SVG URL found: \(url.path)")
let request = URLRequest(url: url)
webView.load(request)
} else {
print("Error: Failed to find SVG file with name: \(svgName).svg in main bundle")
// SVG
if let resourceURL = Bundle.main.resourceURL,
let files = try? FileManager.default.contentsOfDirectory(at: resourceURL, includingPropertiesForKeys: nil) {
let svgFiles = files.filter { $0.pathExtension.lowercased() == "svg" }
print("Available SVG files: \(svgFiles)")
}
}
return webView
}
func updateUIView(_ uiView: WKWebView, context: Context) {}
}
// Usage:
// SVGImage(svgName: "Avatar")