我正在尝试在我的使用 jetpack compose 的应用程序上实现一个入职屏幕,该屏幕只会在第一次使用该应用程序时打开,并且“入职”布尔值随后保存在数据存储首选项中。如果您知道存储数据存储首选项的更好方法,我也想知道,我的最小示例显示了问题:
val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "settings")
val ONBOARDING = booleanPreferencesKey("onboarding")
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
NearbyConnectionsApi.setContext(applicationContext)
val onBoarding: Flow<Boolean> = baseContext.dataStore.data
.map { preferences ->
preferences[ONBOARDING] ?: false
}
super.onCreate(savedInstanceState)
setContent {
val navController = rememberNavController()
if(!onBoarding)//how to use the value here please
{
navController.navigate("onboarding"){
popUpTo(0)
}
}
//....screen implementation
}
请问如何使用流量值的值?提前致谢