有没有办法指定 count 应该只在主线程上发布?我看过一些讨论使用 设置发布者的文档receive(on:),但在这种情况下,@Publisher包装器隐藏了该逻辑。
import SwiftUI
import Combine
class MyCounter: ObservableObject {
@Published var count = 0
public static let shared = MyCounter()
private init() { }
}
struct ContentView: View {
@ObservedObject var state = MyCounter.shared
var body: some View {
return VStack {
Text("Current count: \(state.count)")
Button(action: increment) {
HStack(alignment: .center) {
Text("Increment")
.foregroundColor(Color.white)
.bold()
}
}
}
}
private func increment() {
NetworkUtils.count()
}
}
public class NetworkUtils {
public static …Run Code Online (Sandbox Code Playgroud) 我已经创建了自己的自定义首选项对象来扩展Preference.我只创建了它们,因为这些自定义数据类型没有首选项.
一切正常,但我的自定义首选项没有相同的外观,因为它们缺少系统首选项对象具有的水平分隔符.我已经找到了创建水平分隔符的代码,但我无法找到它的位置.
内置分隔器不仅仅是一个薄条.它有一点渐变.我认为这可能在布局文件中,但我找不到系统首选项的布局.
有人知道这是如何实现的吗?