小编Mic*_*ael的帖子

SwiftUI - 如何将 EnvironmentObject 传递到视图模型中?

我正在寻找创建一个可以由视图模型(不仅仅是视图)访问的 EnvironmentObject。

Environment 对象跟踪应用程序会话数据,例如登录、访问令牌等,这些数据将被传递到视图模型(或需要时的服务类)以允许调用 API 以从该 EnvironmentObjects 传递数据。

我试图将会话对象从视图传递给视图模型类的初始化程序,但出现错误。

如何使用 SwiftUI 访问/传递 EnvironmentObject 到视图模型中?

mvvm ios swift swiftui

70
推荐指数
5
解决办法
1万
查看次数

SwiftUI 和 MVVM 设计模式

我试图弄清楚如何使用 MVVM 设计模式和 SwiftUI 来实现以下目标。

\n

我只想拥有网络操作队列的 1 个实例(使用OperationQueue),其中任何视图模型都需要发送任何网络请求,但我听说创建单例不是首选,我应该将网络队列对象传递到它所在的位置需要。

\n

因此,如果我在场景委托中创建网络操作队列的实例,并将它们传递到 ContentView 初始化程序中,并将其存储在那里的对象中,然后传递到随后创建的视图中。

\n

这似乎不是一个好的 MVVM 设计实践,因为根据我的理解,视图应该只拥有 ViewModel?

\n

实现这一目标的最佳方法是什么?

\n

编辑:对此进行更多思考,我可以通过其构造函数将其传递到视图中,然后在构造函数中我可以创建视图模型并直接传递它,以便视图不拥有任何东西。

\n

但我仍然需要一个单例,那么如何将单例作为依赖注入传递而不是全局使用它呢?

\n

design-patterns mvvm ios swift swiftui

3
推荐指数
1
解决办法
1920
查看次数

Xcode界面构建器中的图像资产大小

如果我将图像视图添加到Xcode中的界面构建器中并且它的大小为200 x 100(Xcode中的大小),我如何知道使图像资产的大小为1x 2x和3x.

如果我在3x的photoshop中将其设为600x300像素,然后尝试使用此图像,它在iPhone 7 plus上看起来不太清晰,那么我如何知道图像资源对于给定图像视图大小应该是什么分辨率

xcode resolution image ios

1
推荐指数
1
解决办法
1698
查看次数

标签 统计

ios ×3

mvvm ×2

swift ×2

swiftui ×2

design-patterns ×1

image ×1

resolution ×1

xcode ×1