我有一个带有 MutableStateFlow 的 KmmShared 单例类,它可以在 Android 上正常工作。我需要知道访问此 Singleton 类及其 MutableStateFlow 变量的最佳方法,并在 SwiftUI 应用程序中进行更新。
class MySingeltonClass {
private val _selectedType: MutableStateFlow<MyEnum> = MutableStateFlow(getUserPrefsType())
var selectedType = _selectedType.asStateFlow()
private fun getUserPrefsType() : MyEnum {
// Get Enum from DB
}
fun setType(scheme: MyEnum) {
// Set Enum in DB
_selectedType.value = scheme
}
companion object {
private lateinit var instance: MySingeltonClass
fun getInstance(): MySingeltonClass {
if (!this::instance.isInitialized) {
instance = MySingeltonClass()
}
return instance
}
}
}
enum class MyEnum {
TYPEA, …
Run Code Online (Sandbox Code Playgroud)