问题标签 [swiftui]
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.
swift - 读取环境对象外部视图.body
我构建了一个绑定到我的自定义视图的 BindableObject。
我想更新此类中的项目数组
我有一个视图模型,我可以在其中进行获取,因为我不想将服务注入到这个 ListData 类中。这是因为我不想让它做任何获取,我想将它保留在我的视图模型中。
但是当我尝试更新我的 VM 中的 ListData.Items 时,我收到了这个错误:Reading EnvironmentObject outside View.body: file
您是否只允许在这个新视图类的主体内更新这个变量?在这种情况下,您是否应该在 BindableObject 中完成所有网络工作?
尚未找到有关此最佳实践的任何文档。
swiftui - 如何加载具有视图名称的视图?例如,我有一个 struct TextPage: View ,如何通过字符串 TextPage 加载这个 View?
如何加载具有视图名称的视图?例如,我有一个struct TextPage: View
,如何通过字符串 TextPage 加载此视图?
view - 在 SwiftUI 中,如何将选项卡放在视图顶部的 TabbedView 中?
我有一个底部带有选项卡的视图,其中一个views
has subviews
,为了在视觉上分离逻辑,我使用以下代码将子视图的选项卡放在视图顶部,它可以完美运行:
我该怎么做SwiftUI
?
swift - 为什么/何时允许在 Swift 中用于 EnvironmentObjects 的未初始化的非可选值?
在 Swift 中,这会在运行时崩溃:
并在SceneDelegate.swift
:
线程 1:EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)
解决问题并不难,但很奇怪:
那么这里发生了什么?我通过EmptyData()
了,SwiftUI 决定两者都emptyData
应该emptyData2
使用相同的对象引用进行初始化?我还可以将其他甚至不存在的环境对象作为RandomView
实例中的变量传递:
而且 SwiftUI 只是愉快地运行,虽然SomeData()
没有在实例中的任何地方使用,RandomView()
并且在我看来应该触发编译时错误。
为什么在编译时允许未初始化的值而不在初始化对象时初始化它们,为什么我们可以自由地传递环境实例而不对它们做任何事情?对我来说看起来有点像 Javascript,我喜欢 Swift 中强大的静态安全类型……我不明白为什么成员初始化器只生成一个将环境变量作为参数的初始化器。
swift - SceneDelegate 和 AppDelegate 的区别
在我的 SwiftUI 项目中,我看到AppDelegate
了文件和SceneDelegate
文件。
它们之间有什么区别?
例如在方法之间SceneDelegate
并且在AppDelegate
list - 如何删除/调整列表中的分隔符?
有没有办法List
在 SwiftUI 中删除分隔符或调整分隔符插入?
在 UIKit 中可以通过
和
对应的 SwiftUI 替代方案是什么?
ios - 如何使用 BindableObjects (EnviromentObject)?
我正在使用新的 SwiftUI。我有一个UserUpdate
类,Bindable Object
我想修改这些变量并自动更新 UI。
我成功更新了这些值,但是当我更改类中的变量时,我的 UI 结构中的视图没有更新UserUpdate
。
只有当我修改@EnviromentObject
UI 结构本身的变量时,它才会改变。
那是我的可绑定对象类:
那是我的用户类:
以下是我配置 UI 的方式:
在这里我修改变量UserUpdate
:
ios - 使用 SwiftUI 扁平化元组视图
好的,本周发布了 SwiftUI,所以我们都是 n00bs 但是......我有以下测试代码:
这会产生以下错误:
函数声明了一个不透明的返回类型,但其主体中的返回语句没有匹配的底层类型
发生这种情况是因为第一个 ZStack 是这种类型:
第二个是这种类型:
我如何在 SwiftUI 中处理这个问题?它们可以以某种方式展平或使其符合相同的类型。
swiftui - 具有自定义类型的 SwiftUI 可绑定属性将无法编译
我创建了一个Bindable
具有两个属性的 SwiftUI 类,例如
这完全符合预期。但是当我尝试添加具有自定义类型的属性(作为结构、类或元组)时,它无法编译:
说我“不能调用非函数类型'PassthroughSubject'的值”。如果我尝试,它也会以同样的方式失败
诊断按钮无用;它只是说它“无法建立活动模式”。
哪些类型可以用作Bindable
类的属性?