Место, где используется ColorScheme в LazyRow, не может реагировать на его обновление и перекомпоновку.Android

Форум для тех, кто программирует под 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
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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