[英]how to customize calendar view in jetpack compose?
我正在使用底部工作表中的日歷視圖來顯示日歷視圖。 現在我想更改導航左右箭頭圖標並減少日歷中兩個圖標之間的空間。 我還想要“今日”文本label當今天的日期選擇下面的日期時。
目前我得到這樣的觀點:
這是我想要獲得的視圖:
Row(modifier = Modifier
.padding(6.dp),
verticalAlignment = Alignment.Top) {
AndroidView(
{ CalendarView(it) },
modifier = Modifier.wrapContentWidth(),
update = { views ->
views.date = scheduleViewModel.selectedCalender.value.timeInMillis
views.setOnDateChangeListener { calendarView, year, month, dayOfMonth ->
val cal = Calendar.getInstance()
cal.set(year, month, dayOfMonth)
scheduleViewModel.onEvent(ScheduleEvent.DateSelected(cal))
onDateSelect()
}
}
)
Text(
text = "Today",
modifier = Modifier
.wrapContentWidth(),
fontFamily = appFontFamily,
fontWeight = FontWeight.SemiBold,
fontSize = 10.sp,
color = Color(0xFF0A70C4),
textAlign = TextAlign.Center,
)
}
當您使用 XML 視圖時,您需要尋找非 Compose 解決方案,例如查看此問題下的答案如何為CalendarView
定義自定義 XML 主題。
要將主題應用於AndroidView
,您可以使用ContextThemeWrapper
:
AndroidView(
{ CalendarView(ContextThemeWrapper(it, R.style.your_custom_style)) },
// ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.