问题标签 [swiftui-previews]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
94 浏览

core-data - 带有核心数据的 SwiftUI 预览:无效的 NSEntityDescription

我正在尝试让我的 SwiftUI 预览与内存中的核心数据堆栈(来自 Xcode 模板)一起使用。只要我调用 Entity.entity(),我就会收到以下错误消息:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'An NSManagedObject of class 'Entity' must have a valid NSEntityDescription.'

我检查了名称NSPersistentCloudKitContainer(name:是否正确,我还检查了我.xcdatamodeld的 Entity 名称是正确的,模块是空的(即全局命名空间),并且我@objc(Entity)在 NSManagedObject 子类的顶部有这个。

如果我使用非内存堆栈,则预览可以工作。如果我使用内存堆栈,就好像没有加载模型。

0 投票
0 回答
247 浏览

swiftui - Cocoapods 框架和 SwiftUI 预览

知道为什么在使用 Cocoapods 并使用它们构建自定义模块时 SwiftUI 预览不起作用。

我有使用 Podfile、podspec、iOS 目标创建的模块。我在那里放置了应用程序使用的可重用视图。但是在开发此类视图时,我无法使用 SwiftUI 预览来在开发过程中进行预览。我每次都被强制重建应用程序。

是否可以在 Cocoapods 模块/框架中使用预览?

更新

我用 Xcode 12 创建了最简单的框架项目,并且只添加了一个带有 Hello World 文本的简单视图,它也无限加载并且不显示。

0 投票
0 回答
263 浏览

ios - 每当我更改文件时,SwiftUI Preview 都会暂停

我有一个 SwiftUI 视图 (LandingScreenView.swift),它使用在另一个文件 (DefaultButtonStyle.swift) 上实现的按钮样式。当我转到该按钮样式文件并在那里更改一行代码时,然后返回到 LandingScreenView.swift SwiftUI 预览已暂停。它总是发生。这是一个非常新鲜的项目,只有这 2 个文件,我在构建阶段有一个复制脚本,我已经将它设置为运行“仅用于安装构建”。如何让 SwiftUI 不暂停工作?

Xcode 版本:12.5

(我在 M1 MacBook 上运行它,不知道这是否有什么不同)

检查 Pods Manifest.lock

编辑:

我的问题不是每次预览都必须重新编译。似乎有点奇怪的是,每次我走出屏幕并返回时,我都必须按下恢复按钮。

在此处输入图像描述

0 投票
1 回答
46 浏览

swift - 自定义视图有效,但其预览无法编译

对于这个问题,我在 Github准备了一个简单的测试项目:

列表截图

它是一个带有自定义 View TopRow.swift的 SwiftUI 列表:

正如您在上面的屏幕截图中看到的那样,它工作正常。

但是它的预览不起作用:

Xcode 报告语法错误Consecutive declarations on a line must be separated by ';'

错误信息

那里发生了什么,请帮助我(一个 Swift 新手)理解。

我试图在那里放一个分号,但它并没有真正起作用。

0 投票
1 回答
328 浏览

swift - 更好的 SwiftUI 性能:创建新视图或使用带有 @ViewBuilder 的函数

在 SwiftUI 中使用不同的视图组合时,我们可以采取两种方法:

  1. 要在视图中使用一些 @ViewBuilder 函数作为辅助函数:
  1. 要为该 UI 片段创建不同的视图:

我想知道哪个更好,我们如何衡量它?

从分析上看,在我看来,第二个在更大的视图块中具有更好的性能,尤其是我们可以在预览的加载时间看到它,但我对此一无所知。

0 投票
2 回答
78 浏览

swiftui - 如何使用 foreach 在 SwiftUI 中基于测试数据创建多个单元格预览

我正在尝试显示卡片视图的多个预览(Apple 的 SwiftUI 教程)。我设法使用Group结构手动完成。

我想使用 ForEach 根据测试数据自动显示四个单元格,但是以下内容无法构建,并且编译器无法为表达式生成诊断。

有没有办法在不显式创建每个预览的情况下构建预览?

0 投票
1 回答
530 浏览

swift - 无法将“Int.Type”类型的值转换为预期的参数类型“Int” - Swift

我在这里要做的是使用 NavigationLink 将“KarvonenVal”的值移动到 SummaryView。

但是,我在“KarvonenCalc_Previews”中不断收到错误消息,上面写着“无法将 'Int.Type' 类型的值转换为预期的参数类型 'Int'”。我真的被困在这里,无法在 SummaryView 中显示 KarvonenVal。

同样在 SummaryView_Preview,我收到了类似的错误,上面写着“无法将 'String.Type' 类型的值转换为预期的参数类型 'String'”。

0 投票
0 回答
79 浏览

ios - SwiftUI Preview 奇怪的崩溃 [UIViewController(OGAThumbnailRestrictions) logged_viewWillAppear:] + 51

我很难理解为什么 SwiftUI 预览不起作用......

从屏幕截图中可以看出,SwiftUI 视图是默认的 Hello World。这是我得到的错误:

在此处输入图像描述

我已经能够找到崩溃日志,但我没有从中得到任何东西。

0 投票
0 回答
43 浏览

swift - SwiftUI 预览失败,启动 swiftc 失败:'swiftc too many arguments' 原因?

我有一个大型混合语言(obj-c、swift & c++)项目,它可以在所有平台上构建和运行良好

“为预览而构建”似乎也完成得很好。

打开特定 swift 文件的预览失败,例如:在此处输入图像描述

诊断给出:

我之前已经设法让预览工作。我转而使用预构建的 xcframeworks,希望提高预览构建性能,但已经从缓慢变为根本无法工作!

0 投票
1 回答
57 浏览

xcode - Xcode SwiftUI 预览构建设置

我正在使用方案运行预构建脚本。我的脚本启用了从正在构建的目标提供构建设置的选项。当为 SwiftUI 预览构建项目时,也会执行此脚本。如果正在运行的构建是常规构建还是用于预览,我需要在此脚本中知道。有没有办法做到这一点以及如何做到这一点?

我尝试export在两种情况下都在脚本中运行,但似乎所有环境变量在两种情况下都是相同的。