ios - 单击按钮时(不在模拟器中),如何在 XCode 12.3“预览”中的 SwiftUI 中打印某些内容?
问题描述
我正在尝试使用 SwiftUI(不是模拟器)在 Xcode 12.3 中使用“预览”在调试控制台中打印一些文本,并且遇到问题......似乎没有任何显示。我也尝试右键单击并在预览区域中点击“调试预览”,但没有任何反应。
我还尝试了在单独的帖子中提出的一种方法,方法是在正文之外使用 Print 功能,但它也不起作用,简单的文本也不会打印到控制台。我的代码如下:
import SwiftUI
extension View {
func Print(_ vars: Any...) -> some View {
for v in vars { print(v) }
return EmptyView()
}
}
struct ContentView: View {
var body: some View {
VStack {
Button(action: {
print("Hello") // does not get printed
Print("Hello") // does not get printed
}) {
Text("Click Me")
}
}
}
}
如果没有办法让它在预览中工作并且仅在模拟器运行时打印到控制台,这是一个可以接受的答案,但如果可能的话,我希望能够在没有控制台的情况下打印语句运行模拟器,无需等待模拟器加载。
解决方案
This works
Button(action: { print("Hello") }) {
Text("Press Button")
}
推荐阅读
- complex-event-processing - Esper EPL 在 1 分钟内匹配 5 对不同字段值的事件
- docker - 本地 Laradock Nginx 项目上的 SSL 证书
- html - 需要在页面中心对齐样式表中的div元素
- ruby-on-rails - 两个模型关联错误(AssociationTypeMismatch)
- mysql - 在 where 子句中使用两组条件
- javafx - JavaFX TreeTableView - 防止编辑不可用的单元格
- rest - 如何使用故障调解器响应故障
- mysql - 创建查询以按 2 个字段获取未完成呼叫组的计数
- android - Android:Retrofit2 和 Kotlin 无法捕获的异常
- javascript - 初学者坚持使用 jQuery/JS,希望得到一些帮助