Как оживить изменения темы в составлении с материалом3Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как оживить изменения темы в составлении с материалом3

Сообщение Anonymous »

Я здесь, потому что мне нужно, если есть способ «анимировать» изменения темы в материале3. < /p>
Проблема заключается в том, что когда я меняю тему, изменение очень резкое, то я хочу сделать жидкость и не внезапно, не рискуя пользователем.@Composable
fun FinagerTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
// Dynamic color is available on Android 12+
dynamicColor: Boolean = false,
content: @Composable () -> Unit
) {
// define custom providers
val spacing = Spacing()
val successColor = SuccessColors()

val colorScheme = when {
dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
val context = LocalContext.current
if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
}
darkTheme -> DarkColorScheme
else -> LightColorScheme
}
val view = LocalView.current

// switch status bar color
if (!view.isInEditMode) {
SideEffect {
val window = (view.context as Activity).window
window.statusBarColor = colorScheme.primary.toArgb()
WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = !darkTheme
}
}

// provides custom providers
CompositionLocalProvider(
LocalSpacing provides spacing,
LocalColors provides successColor
) {
MaterialTheme(
colorScheme = colorScheme,
shapes = MaterialTheme.shapes,
typography = Typography,
content = content
)
}
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... -material3
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»