1. Listview的使用,以及动态加载布局(分类显示任务),adapter的动态刷新问题,通过getAdapter获得当前listview的适配器,再调用通知方法:
noteAdapter = (NoteAdapter)noteList.getAdapter();
noteAdapter.notifyDataSetChanged();
2. 闹钟功能的使用:
闹钟一般结合BroadcastReceiver使用,同时了解pendingintent作用了,
开启闹钟可以设置模式,闹钟时间(包括相对时间与绝对时间,一般计算与当前时间的差值)此参数为System.currentMillis+差值。
也可以设置时间间隔重复闹钟
启动闹钟:闹钟启动需要开启服务,而服务必须在调用oncreate方法后才启动,启动闹钟后,发送广播,在onReceive方法中处理闹事件触发后的动作,一般可以通过开启后台服务,并在服务中使用MediaPlayer播放音乐
取消闹钟:调用cancel方法,并调用stopservice方法关掉播放音乐的服务
3. 闹钟布局相关
如何将日期跟时间设置集成到一个页面中呢?我的做法是写一个布局文件,用一个按钮触发DatePicker控件,设置日期,再在布局中加上时间控件。
4. 日期类的使用与日期格式化
Calendar很强大,其中一般获得实例后就初始化当前时间
通过调用calendar.add方法可以设置多少天后的日期,真的很强大啊,通过这个方法加一个循环可以得到所有周,适合以周模式显示日期
另外calendar有一个主意的地方就是月份,范围是0-11,因此获得当前月份时需要加1显示,而且不要加错了位置,星期也是从星期天开始的
5. 周模式显示
数据的加载,获取当前时间,通过在getView中查询数据库,此种做法效率比较低些,以后再加以改进
6. 其实最重要的还是数据库的使用,特别是contentProvider,这个以后专门搞个模块做下总结
效果图如下: