SwiftUI - 预览时未知的预览提供程序“ContentView_Previews_”。发生在一个全新的项目中

     2023-02-24     231

关键词:

【中文标题】SwiftUI - 预览时未知的预览提供程序“ContentView_Previews_”。发生在一个全新的项目中【英文标题】:SwiftUI - Unknown preview provider "ContentView_Previews_" when previewing. Happens in a brand-new project 【发布时间】:2021-01-24 17:20:47 【问题描述】:

我有这个简单的观点。

import SwiftUI

struct ContentView: View 
    var body: some View 
        Text("Hello")
    


struct ContentView_Previews: PreviewProvider 
    static var previews: some View 
        ContentView()
    

通常预览效果很好。但是今天,我收到了这个错误Unknown preview provider "ContentView_Previews_"

再试一次 不起作用。当我按 Diagnostics 时,会显示:

RemoteHumanReadableError: Failed to update preview.

Error encountered when sending 'previewInstances' message to agent.

==================================

|  RemoteHumanReadableError: Unknown preview provider "ContentView_Previews_"
|  
|  5SwiftUI does not contain a preview provider named "ContentView_Previews_". Check your build settings to ensure the preview provider is compiled into your product.
|  
|  Mangled name: 009_SwiftUI_0021ContentView_Previews_V

所以我认为 Xcode 可能出现故障,并希望在预览结构的末尾添加下划线。我补充说:

struct ContentView_Previews_: PreviewProvider 

但现在我明白了,Unknown preview provider "ContentView_Previews__

还有其他人遇到过这个吗?我的 Xcode 版本是 12.3 (12C33)。

【问题讨论】:

当你尝试聪明并且项目名称以#开头时也会发生这种情况 【参考方案1】:

我遇到了同样的问题。最终,我发现当项目名称以数字字符开头时会发生这种情况,例如"01-test"。创建一个没有数字作为第一个字符的新项目就可以了,例如"test".

【讨论】:

感谢发帖。我已经有这个问题好几天了,但直到今天早上我唯一的错误是 5 秒超时。想添加以防其他人只收到超时错误。【参考方案2】:

我的项目中有同样的问题。我正在处理的项目名称以数字字符开头,Xcode 在项目文件的几个地方用下划线 _ 替换该字符。在 Service Provider 末尾添加完全相同的下划线,因此所有 SwiftUI 预览都停止工作,出现错误 Unknown preview provider "ContentView_Previews_ 唯一可行的解​​决方案是删除项目名称开头的数字字符,如 Sorceror 提供的答案。 不幸的是,我们并非总是可以更改项目名称来解决问题,最终在没有预览的情况下处理 SwiftUI 项目 - 必须使用旧方法 - 构建并运行整个项目以查看模拟器或真实设备中的更改。 不幸的是,我没有找到另一种方法来解决这个问题并让 SwiftUI 预览正常工作。

【讨论】:

SwiftUI:尝试加载本地 JSON 数据时,Canvas 出现预览错误

】SwiftUI:尝试加载本地JSON数据时,Canvas出现预览错误【英文标题】:SwiftUI:IgetapreviewerrorintheCanvaswhentryingtoloadlocalJSONData【发布时间】:2019-10-2311:32:49【问题描述】:我目前正在尝试在我的应用程序的.json文件中以本地Data开始学... 查看详情

swiftui一新建

新建SwiftUI文件预览SwiftUI可以实时看到对页面的做出的修改,纯SwiftUI时,默认静态预览。点击预览串口的Resume按钮可查看。预览包含UIView子类视图时,需要打开时时预览如果没有显示预览窗口则按下图操作打开即可 拖放comman... 查看详情

扩展视图时 SwiftUI 预览崩溃

】扩展视图时SwiftUI预览崩溃【英文标题】:SwiftUIpreviewcrasheswhenextendingView【发布时间】:2020-06-1021:30:11【问题描述】:我有一个项目需要支持旧版本的iOS,我正在尝试使用SwiftUI来创建仅在用户使用iOS13或更高版本时才会出现的视... 查看详情

用于 SwiftUI 预览的应用数据文件存储在哪里

】用于SwiftUI预览的应用数据文件存储在哪里【英文标题】:WhereareappdatafilesstoredforSwiftUIpreview【发布时间】:2019-12-2115:33:26【问题描述】:当我在XCode模拟器中运行应用程序时,它的应用程序支持目录位于:~/Library/Developer/CoreSimul... 查看详情

SwiftUI:使用条件布局在画布中显示预览

】SwiftUI:使用条件布局在画布中显示预览【英文标题】:SwiftUI:Displaypreviewincanvaswithconditionallayout【发布时间】:2020-05-0207:12:08【问题描述】:我正在构建一个带有一些条件控件的布局,具体取决于用户偏好。例如,我仅在用户... 查看详情

SwiftUI 中的上下文菜单预览没有圆角

】SwiftUI中的上下文菜单预览没有圆角【英文标题】:ContextmenupreviewnotwithroundedcornersinSwiftUI【发布时间】:2021-11-1622:54:20【问题描述】:当在SwiftUI中使用样式为List的plain并在VStack内使用多个Text视图时,如下所示,显示其上下文菜... 查看详情

使用 SwiftUI @Binding 预览崩溃:与应用程序的通信中断

】使用SwiftUI@Binding预览崩溃:与应用程序的通信中断【英文标题】:PreviewcrashwithSwiftUI@Binding:communicationwiththeappwasinterrupted【发布时间】:2019-07-1520:10:35【问题描述】:所以我有一个XCode项目,它有2个.swift文件,它们通过SwiftUI的@B... 查看详情

在视图中注入实体时,SwiftUI 预览不适用于核心数据

】在视图中注入实体时,SwiftUI预览不适用于核心数据【英文标题】:SwiftUIPreviewDoesNotWorkwithCoreDatawhenEntityInjectedinView【发布时间】:2020-09-2100:51:25【问题描述】:几个月来我一直很沮丧,因为我在使用CoreData时试图让预览在Xcode中... 查看详情

@State 和 CoreData 的 SwiftUI 预览问题

】@State和CoreData的SwiftUI预览问题【英文标题】:SwiftUIPreviewissuewith@StateandCoreData【发布时间】:2020-07-1415:38:43【问题描述】:我在预览看起来很简单的结构时遇到了麻烦。Customer是一个CoreData实体:structCustomerDetailView:View@Environment(\... 查看详情

xcode如何在预览(preview)调试中避免与swiftui正常运行时环境不一致导致的崩溃

...有时候,我们需要在Xcode预览(Preview)中快速查看或测试SwiftUI视图的界面和功能,但遗憾的是预览和实际运行的环境从来都不会完全一样。某些情况下,实际运行环境中App的初始化代码很难在Preview环境中执行。所以,我们在Xcod... 查看详情

xcode如何在预览(preview)调试中避免与swiftui正常运行时环境不一致导致的崩溃

...有时候,我们需要在Xcode预览(Preview)中快速查看或测试SwiftUI视图的界面和功能,但遗憾的是预览和实际运行的环境从来都不会完全一样。某些情况下,实际运行环境中App的初始化代码很难在Preview环境中执行。所以,我们在Xcod... 查看详情

xcode12.2+生成swiftui2.0coredata模板预览时崩溃问题的解决(代码片段)

不少小伙伴在低版本的Mac中使用Xcode12.2+生成带CoreData的SwiftUI(2.0)模板App时会发现,在显示ContentView的预览时可能会发生崩溃。因为预览使用的是PersistenceController中的preview持久控制器(PersistenceController),所以实际预览中所有CoreData数... 查看详情

以低分辨率运行的 SwiftUI 预览

】以低分辨率运行的SwiftUI预览【英文标题】:SwiftUIpreviewrunninginlowresolution【发布时间】:2020-02-2012:00:57【问题描述】:我正在测试SwiftUI,但与Simulator应用程序相比,我的Xcode预览运行的分辨率非常低,这使得进行一些“像素完... 查看详情

SwiftUI 中的小部件 UI 预览

】SwiftUI中的小部件UI预览【英文标题】:WidgetUIpreviewinSwiftUI【发布时间】:2020-09-2014:02:04【问题描述】:如何将小部件的预览插入应用程序?谁能给我一些建议?【问题讨论】:【参考方案1】:我使用SwiftUI做了一个Widget配置预... 查看详情

Xcode 预览在 DB 循环读取 SwiftUI 时崩溃

】Xcode预览在DB循环读取SwiftUI时崩溃【英文标题】:XcodepreviewcrashesonDBloopreadSwiftUI【发布时间】:2020-05-2215:23:46【问题描述】:当我使用以下方式调用CoreData时:@FetchRequest(entity:Entity.entity(),sortDescriptors:[NSSortDescriptor(keyPath:\\Entity.id... 查看详情

SwiftUI onDrag 在设备上运行时不显示预览图像

】SwiftUIonDrag在设备上运行时不显示预览图像【英文标题】:SwiftUIonDragdoesnotshowpreviewimagewhenrunningondevice【发布时间】:2020-06-2617:32:15【问题描述】:我注意到自iOS13.4起可用的SwiftUI中的拖放功能存在问题。使用.onDrag和.onDrop修饰符... 查看详情

如何修改拖放预览SwiftUI的背景颜色和形状?

】如何修改拖放预览SwiftUI的背景颜色和形状?【英文标题】:HowdoImodifythebackgroundcolorandshapeofdrag&droppreviewSwiftUI?【发布时间】:2021-09-2814:48:18【问题描述】:我正在尝试使用可拖动单元格(iOS15)实现简单列表。目前我有两个... 查看详情

与核心数据一起使用时预览崩溃

...布时间】:2020-08-2912:23:53【问题描述】:我正在尝试使用swiftui和core-data创建一个简单的待办事项应用程序,但是在添加视图时遇到了一些问题。我有一个TaskView视图,它将用于显示有关列表中任务的一些信息(标题、日期等)。... 查看详情