如何让 UIImage 默认显示一种颜色?
How to have UIImage display a color by default?
我想在我的应用程序中有一个非可选的 UIImage,这样当它被更改时,我的应用程序中显示该图像的所有视图(使用 swiftUI Image())会自动更新为真实图像。
如何将我的 UIImage 设置为默认灰色,直到它在 SessionStore 中 updated/changed 具有来自网络调用的新数据,或者在 SessionStore 中设置新图片等...
我在 SwiftUI 视图中将此 UIImage 用作 Image(),我认为这意味着以某种方式将 UIColor 转换为数据?
谢谢
class SessionStore: ObservableObject {
@Published var profilePicture: UIImage = UIImage(data: <GRAY-COLOR-DATA??>)
}
struct ContentView : View {
@EnvironmentObject var session: SessionStore
var body: some View {
VStack {
Image(uiImage: session.profilePicture)
}
}
}
我建议保留图片可选,但在视图中显示默认的灰色,例如(但不限于):
class SessionStore: ObservableObject {
@Published var profilePicture: UIImage?
}
struct ContentView : View {
@EnvironmentObject var session: SessionStore
var body: some View {
VStack {
if let image = session.profilePicture {
Image(uiImage: image)
} else {
Color.grey
}
}
}
}
我想在我的应用程序中有一个非可选的 UIImage,这样当它被更改时,我的应用程序中显示该图像的所有视图(使用 swiftUI Image())会自动更新为真实图像。 如何将我的 UIImage 设置为默认灰色,直到它在 SessionStore 中 updated/changed 具有来自网络调用的新数据,或者在 SessionStore 中设置新图片等...
我在 SwiftUI 视图中将此 UIImage 用作 Image(),我认为这意味着以某种方式将 UIColor 转换为数据?
谢谢
class SessionStore: ObservableObject {
@Published var profilePicture: UIImage = UIImage(data: <GRAY-COLOR-DATA??>)
}
struct ContentView : View {
@EnvironmentObject var session: SessionStore
var body: some View {
VStack {
Image(uiImage: session.profilePicture)
}
}
}
我建议保留图片可选,但在视图中显示默认的灰色,例如(但不限于):
class SessionStore: ObservableObject {
@Published var profilePicture: UIImage?
}
struct ContentView : View {
@EnvironmentObject var session: SessionStore
var body: some View {
VStack {
if let image = session.profilePicture {
Image(uiImage: image)
} else {
Color.grey
}
}
}
}