Не удается найти тип «NSViewRepresentable» в области видимости
Я хочу создать размытое представление в SwiftUI с помощью NSViewRepresentable, но XCode выдает мне сообщение об ошибке, в котором говорится: «Не удается найти тип« NSViewRepresentable »в области».
import SwiftUI
struct BlurWindow: NSViewRepresentable { //Cannot find type 'NSViewRepresentable' in scope
func makeNSView(context: Context) -> NSVisualEffectView { //Cannot find type 'Context' in scope
let view = NSVisualEffectView() //Cannot find type 'NSVisualEffectView' in scope
view.blendingMode = .behindWindow
return view
}
func updateNSView(_ nsView: NSVisualEffectView, context: Context) { //Cannot find type 'Context' in scope
}
}
Однако, когда я скопировал и вставил точно такой же код в новый проект Xcode, ошибок не было. Я искал по всему Google и StackOverflow и не нашел никого с такой же проблемой.
1 ответ
Ваш проект ориентирован на iOS? Вы строите эту цель? Если это так, убедитесь, что файл не включен в эту цель (с помощью инспектора файлов в разделе Целевое членство), поскольку NSViewRepresentable недоступен в iOS.
В качестве альтернативы вы можете обернуть свой код в
#if os(macOS)
а также
#endif
.