Proto DataStore | Jetpack Compose
MainActivity.kt import android.os.Bundleimport androidx.activity.ComponentActivityimport androidx.activity.compose.setContentimport androidx.compose.foundation.layout.Arrangementimport androidx.compose.foundation.layout.Boximport androidx.compose.foundation.layout.Columnimport androidx.compose.foundation.layout.Spacerimport androidx.compose.foundation.layout.fillMaxSizeimport androidx.compose.foundation.layout.heightimport androidx.compose.foundation.layout.wrapContentHeightimport androidx.compose.foundation.layout.wrapContentWidthimport androidx.compose.material3.Buttonimport androidx.compose.material3.Surfaceimport androidx.compose.material3.Textimport androidx.compose.runtime.Composableimport androidx.compose.runtime.LaunchedEffectimport androidx.compose.runtime.MutableStateimport androidx.compose.runtime.collectAsStateimport androidx.compose.runtime.mutableStateOfimport androidx.compose.runtime.rememberimport androidx.compose.runtime.rememberCoroutineScopeimport androidx.compose.ui.Alignmentimport androidx.compose.ui.Modifierimport androidx.compose.ui.graphics.Colorimport androidx.compose.ui.unit.dpimport androidx.compose.ui.unit.spimport com.neco_desarrollo.datastorelesson.ui.theme.Blueimport com.neco_desarrollo.datastorelesson.ui.theme.DataStoreLessonThemeimport com.neco_desarrollo.datastorelesson.ui.theme.Greenimport com.neco_desarrollo.datastorelesson.ui.theme.Redimport kotlinx.coroutines.launchclass MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val dataStoreManager = ProtoDataStoreManager(this) setContent { DataStoreLessonTheme { val settingState = dataStoreManager.getSettings().collectAsState(initial = SettingsData()) Surface( modifier = Modifier.fillMaxSize(), color = Color(settingState.value.bgColor.toULong()) ) { MainScreen(dataStoreManager, settingState.value.textSize) } }… Подробнее »Proto DataStore | Jetpack Compose