新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
初学Compose肯定要做些东西来熟悉,接下来我来分享我做的一个简易日历。
专注于为中小企业提供成都做网站、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业头屯河免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
首先推荐一个网站,Accompanist是一组库,旨在用开发人员通常需要但尚不可用的功能来补充[Jetpack Compose。]。 google.github.io/accompanist…
协奏曲pager implementation("com.google.accompanist:accompanist-pager:0.21.3-beta")
然后是一个库,帮助我们在compose里创建和管理viewmodel
implementation('androidx.lifecycle:lifecycle-viewmodel-compose:2.4.0')
首先日历有年月日,但是我做的这个日历没有年份,你当然也可以自己添加。
【Android开发】Android开发教程——jetpack Compose原理解析以及未来趋势_哔哩哔哩_bilibili
【问题一】 卡顿问题
有人打开CalendarView会发生卡顿现象,不过这个问题也有人找到解决方案。如下:
解决Android CalendarView显示卡顿的问题
【问题二】 获取不到日期问题
在某些手机上,会发生获取不到日期的问题,这个问题是非常严重的,因为系统兼容问题导致,这个问题目前没有解决方案
【问题三】 样式不一致问题
CalendarView的样式受到系统的影响,在不同的手机上可能样式不一样。
比如,在布局文件中写一个最简单的CalendarView布局
但是,在手机上的样式是这样的:
总之,一般项目中使用日历控件都会将原生控件CalendarView排除在外。
[本章完...]
原文地址:
简介 由于项目的需求,研究了众多日历软件。本软件是一款高仿小米的自定义日历 控件,周月视图平滑滚动,平滑切换,可以在 xml 文件中进行属性的配置定制,加入你自己的 RecyclerView 后,实现日历与列表的无缝连接。
使用此方法给MonthPager添加上相关监听
最近项目紧,需求多,本着能GitHub的就不自己动手。然鹅,并没有找到合适的。还是自己动手撸吧,再不完成就要被领导撸了。
1、部分功能需要日历可以单选;
2、入住日期需要范围选择;
3、对应显示农历。
对于需求1和2,其本质需求是一样的,有了一个日历基础上就是控制选择的逻辑问题。那么日历从哪儿来呢?
答案显而易见,标题已经划重点了——RecyclerView。
这种上下滚动的日历(或者说这种布局),我们已经到了见了就有条件反应的地步了。从一开始的ListView、GridView到现在的RecyclerView,基本每个app都会用到。
那么这个日历就决定是它了,出来吧:RecyclerView嵌套RecyclerView。
其中复杂的就是嵌套的RecyclerView,其中需要显示的不同状态的日期较多。如不可选择的1号之前的日期、今天的日期、周末的日期等。
项目地址: GitHub - Mitaxing/RVCalendar: 基于RecyclerView自定义日历,可单选,可范围选