【JAVA大作业开发记录(五)】
来源:互联网 发布:算法导论 第3版 pdf 编辑:程序博客网 时间:2024/06/04 19:00
这一周主要完成了世界时钟模块的设计。
时钟模块主要由一个主类和四个函数组成。时钟主类中定义了模块所需变量等,具体内容如下面代码所示。第一个函数是时间获取函数,实现系统时间的获取工作,获取系统默认calendar对象。这一模块涉及到的核心内容是获取系统时间,在安卓开发的书籍和资料中,我了解到安卓里设置系统时间常用的两种方法:第一种是用Date类来实现,并结合DateFormat类来实现时间的格式化;第二种是利用Calendar类来实现;利用Calendar类来实现日期时间和Date类相比更简单。第二个函数是时间更新函数,实现时钟的时间更新。第三个函数是时间的显示函数,主要实现系统时间的显示。最后一个函数是日期显示的格式化函数,能够使日期按规定格式所显示。
部分核心类和函数代码:
/**
* 数字时钟主类
*/
public class DigitalClockextends LinearLayout {
private final static String M12 ="h:mm";//设置 小时 分 格式
private Calendar mCalendar;//calendar
private String mFormat;//时间格式
private TextView mTimeDisplay;//时间显示文本
private AmPm mAmPm;
private ContentObserver mFormatChangeObserver;
private boolean mLive = true;
private boolean mAttached;
获取calendar 对象 创建时间日期对象final Calendar c = Calendar.getInstance();c.set(Calendar.HOUR_OF_DAY, alarm.hour);//小时c.set(Calendar.MINUTE, alarm.minutes);//分钟digitalClock.updateTime(c);//更新时间
时间更新函数private void updateTime() { if (mLive) { //设置系统时间 mCalendar.setTimeInMillis(System.currentTimeMillis()); } CharSequence newTime = DateFormat.format(mFormat, mCalendar); mTimeDisplay.setText(newTime); mAmPm.setIsMorning(mCalendar.get(Calendar.AM_PM) == 0);}格式化日期函数private void setDateFormat() { mFormat = Alarms.get24HourMode(getContext()) ? Alarms.M24 : M12; mAmPm.setShowAmPm(mFormat == M12);}
最终的UI效果如图:
- 【JAVA大作业开发记录(五)】
- 【JAVA大作业开发记录(一)】
- 【JAVA大作业开发记录(二)】
- 【JAVA大作业开发记录(三)】
- 【JAVA大作业开发记录(四)】
- 【JAVA大作业开发记录(六)】
- 【JAVA大作业开发记录(七)】
- JAVA大作业 - 五道三星题
- Java企业级开发技术大作业
- AM1808开发记录(五)
- JAVA软件开发的五大误区
- 软件工程大作业学习记录
- [五]java作业
- [记录]记录大作业第七天
- Java大作业要求
- java 大作业报告
- java大作业回顾
- Android 闹钟 开发过程记录(五)
- Struts之参数传递
- 1081. Rational Sum (20)
- oracle 11g 数据泵导入导出方法
- 水题列表
- 使用JNotify监控目录下文件变更
- 【JAVA大作业开发记录(五)】
- (十四)洞悉linux下的Netfilter&iptables:开发一个match模块【实战】
- 文件的读写操作和Internet中读取文件
- 黑马程序员--java笔记13--图形用户接口GUI
- pcduino v3(ubuntu)右下角的wifi小扇形不见了(已解决)
- SwipeRefreshLayout:谷歌官方SDK包中的下拉刷新
- OC NSString类字符串拼接问题探究
- 我的第一篇博客:关于android的Camera在takePicture()时不回调onPictureTaken()方法
- FloatingActionButton