Я использую Xomposable Material 3 TimeInput в Jetpack Compose.
Код: Выделить всё
TimeInput(
state = state,
colors = TimePickerDefaults.colors(
selectorColor = OrlenTheme.colors.backgroundComponentSecondary,
containerColor = OrlenTheme.colors.backgroundComponentPrimary,
timeSelectorSelectedContainerColor = OrlenTheme.colors.backgroundComponentSecondary,
timeSelectorUnselectedContainerColor = OrlenTheme.colors.backgroundComponentSecondary,
timeSelectorSelectedContentColor = OrlenTheme.colors.backgroundBasePrimary,
timeSelectorUnselectedContentColor = OrlenTheme.colors.contentBasePrimary
)
)
Я могу настроить многие аспекты компонента, но не могу найти способа изменить цвет границы или индикатора текстового поля, когда оно находится в фокусе или выбрано. Заглянув в исходный код, кажется, что TimeInput внутренне использует TextField, но цвета индикатора не отображаются через TimePickerDefaults.colors(). Я уже пробовал использовать LocalContentColor, LocalTextSelectionColors, а также обернуть составной объект с помощью Modifier.border, но ни один из этих подходов не влияет на фактическую границу, нарисованную внутренним TextField. Я также нашел открытую проблему, которая кажется связанной и до сих пор не решенной:
https://issuetracker.google.com/issues/315689926. Есть ли какой-либо поддерживаемый способ изменить сфокусированный или несфокусированный цвет границы полей ввода внутри TimeInput без копирования или разветвления компонента Material, или в настоящее время разветвление является единственным жизнеспособным решением? При необходимости могу предоставить минимальный воспроизводимый пример.
Подробнее здесь:
https://stackoverflow.com/questions/798 ... rder-color