Место, где используется ColorScheme в LazyRow, не может реагировать на его обновление и перекомпоновку. ⇐ Android
Место, где используется ColorScheme в LazyRow, не может реагировать на его обновление и перекомпоновку.
Я пробую собственную цветовую схему Material3 в своем приложении. Но я обнаружил, что компоненты в содержимом отложенных строк не могут автоматически перекомпоноваться при изменении цветовой схемы.
Вот пример:
@Composable веселый тест() { вар темный, запомнив {mutableStateOf(false)} МатериалТема( colorScheme = MaterialTheme.colorScheme.copy(основной = if (темный) Color.Black else Color.White) ) { Столбец( вертикальныйArrangement = Arrangement.spacedBy(16.dp) ) { Кнопка("изменить") { темно = !темно } Коробка( модификатор = Модификатор .size(16.dp) .background(MaterialTheme.colorScheme.primary) ) ЛенивыйРов { предметы(3) { Коробка( модификатор = Модификатор .size(16.dp) .background(MaterialTheme.colorScheme.primary) ) } } } } } Я изменил экземпляр цветовой схемы и применил его с помощью лямбды MaterialTheme.
Скриншоты здесь выключенный
Элемент отложенной строки не может изменить свой цвет на последний основной цвет.
Версии здесь
[*]androidx-compose = "1.6.1" [*]androidx-compose-material3 = "1.2.0"
@Composable забавная кнопка( текст: Строка, модификатор: Модификатор = Модификатор, включено: Boolean = true, контейнерЦвет: Цвет = MaterialTheme.colorScheme.primary, contentColor: Цвет = MaterialTheme.colorScheme.onPrimary, отключенныйContainerColor: Color =ContainerColor.copy(alpha = 0.12f), DisableContentColor: Color =ContainerColor.copy(alpha = 0.38f), onClick: () -> Единица измерения ) { интервал значений = LocalSpacing.current Кнопка( форма = RoundedCornerShape(8.dp), onClick = onClick, включено = включено, модификатор = модификатор, цвета = ButtonDefaults.buttonColors( Цвет контейнера = Цвет контейнера, цвет контента = цвет контента, отключенныйКонтейнерЦвет = отключенныйКонтейнерЦвет, DisableContentColor = отключенныйContentColor ) ) { Текст( текст = текст.прописной регистр() ) } } Обновление: Я проверил это еще раз и обнаружил, что проблема появится только в компоненте Material3-adaptive: ListDetailPaneScaffold listPane и блоке detailPane.
androidx.compose.material3:material3-adaptive:1.0.0-alpha06
Я пробую собственную цветовую схему Material3 в своем приложении. Но я обнаружил, что компоненты в содержимом отложенных строк не могут автоматически перекомпоноваться при изменении цветовой схемы.
Вот пример:
@Composable веселый тест() { вар темный, запомнив {mutableStateOf(false)} МатериалТема( colorScheme = MaterialTheme.colorScheme.copy(основной = if (темный) Color.Black else Color.White) ) { Столбец( вертикальныйArrangement = Arrangement.spacedBy(16.dp) ) { Кнопка("изменить") { темно = !темно } Коробка( модификатор = Модификатор .size(16.dp) .background(MaterialTheme.colorScheme.primary) ) ЛенивыйРов { предметы(3) { Коробка( модификатор = Модификатор .size(16.dp) .background(MaterialTheme.colorScheme.primary) ) } } } } } Я изменил экземпляр цветовой схемы и применил его с помощью лямбды MaterialTheme.
Скриншоты здесь выключенный
Элемент отложенной строки не может изменить свой цвет на последний основной цвет.
Версии здесь
[*]androidx-compose = "1.6.1" [*]androidx-compose-material3 = "1.2.0"
@Composable забавная кнопка( текст: Строка, модификатор: Модификатор = Модификатор, включено: Boolean = true, контейнерЦвет: Цвет = MaterialTheme.colorScheme.primary, contentColor: Цвет = MaterialTheme.colorScheme.onPrimary, отключенныйContainerColor: Color =ContainerColor.copy(alpha = 0.12f), DisableContentColor: Color =ContainerColor.copy(alpha = 0.38f), onClick: () -> Единица измерения ) { интервал значений = LocalSpacing.current Кнопка( форма = RoundedCornerShape(8.dp), onClick = onClick, включено = включено, модификатор = модификатор, цвета = ButtonDefaults.buttonColors( Цвет контейнера = Цвет контейнера, цвет контента = цвет контента, отключенныйКонтейнерЦвет = отключенныйКонтейнерЦвет, DisableContentColor = отключенныйContentColor ) ) { Текст( текст = текст.прописной регистр() ) } } Обновление: Я проверил это еще раз и обнаружил, что проблема появится только в компоненте Material3-adaptive: ListDetailPaneScaffold listPane и блоке detailPane.
androidx.compose.material3:material3-adaptive:1.0.0-alpha06
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение