27 lines
709 B
Swift
27 lines
709 B
Swift
//
|
|
// VisualEffectView.swift
|
|
// punchnet
|
|
//
|
|
// Created by 安礼成 on 2026/3/24.
|
|
//
|
|
import SwiftUI
|
|
|
|
// MARK: - 1. 基础 UI 组件 (已修正 Material 枚举)
|
|
struct VisualEffectView: NSViewRepresentable {
|
|
let material: NSVisualEffectView.Material
|
|
let blendingMode: NSVisualEffectView.BlendingMode
|
|
|
|
func makeNSView(context: Context) -> NSVisualEffectView {
|
|
let view = NSVisualEffectView()
|
|
view.material = material
|
|
view.blendingMode = blendingMode
|
|
view.state = .active
|
|
return view
|
|
}
|
|
|
|
func updateNSView(_ nsView: NSVisualEffectView, context: Context) {
|
|
nsView.material = material
|
|
nsView.blendingMode = blendingMode
|
|
}
|
|
}
|