Android 7.1 Deskclock(二) TimerFragment分析

这次我要讲解TimerFragment部分,因为此部分在DeskClock模块也算一个重要部分。  TimerFragment即是计时器。它包括两部分:一个是CreateTimerView视图——设置时间部分;一个是TimersView视图——定时运行部分。CreateTimerView部分主要是给用户设定时间并显示出来;TimersView部分主要用圆圈和数字动态显示时间流逝过程。 
摘要由CSDN通过智能技术生成

    这次我要讲解TimerFragment部分,因为此部分在DeskClock模块也算一个重要部分。

  TimerFragment即是计时器。它包括两部分:一个是CreateTimerView视图——设置时间部分;一个是TimersView视图——定时运行部分。CreateTimerView部分主要是给用户设定时间并显示出来;TimersView部分主要用圆圈和数字动态显示时间流逝过程。

  本文主要从三个方面讲解:自定义控件、数据模型、代码流程。

1. 自定义控件

   不管是CreateTimerView,还是TimersView视图,主要包含了自定义控件。所以需要了解其自定义控件是怎么样实现的。

(1)CreateTimerView(TimerSetupView )

    CreateTimerView部分实际布局为TimerSetupView,而TimerSetupView是自定义视图类,里面包含显示时间的自定义控件和显示0-9的按键。从TimerSetupViewextends LinearLayout implements Button.OnClickListener,Button.OnLongClickListener看,OnClickListener是针对0-9按键和删除按键,而OnLongClickListener只针对删除按键。

 TimerSetupView 的布局由time_setup_view控制,time_setup_view里面有自定义控件com.android.deskclock.timer.TimerView和0-9的buttion,我们着重讲下com.android.deskclock.timer.TimerView。

  

   如上图所示:TimerView里面布局包含了八个TextView和一个ImageView,八个TextView分别用来存放小时的十位、个位值,分钟的十位和个位值,秒,以及汉字“小时、分钟、秒”;一个ImageView是放置“删除”图片。写到这里,大家应该就明白:其实在CreateTimerView界面设置时间时,是用一个一个TextView显示时间的值,那么整个时间设定界面就是如此:当用户点击0-9个按钮时,我们把对应的值用这八个buttion显示出来,同时计算出来等于多少微妙,将其值传给Timer。

   那点击的button值,是如何传入TextView呢?

         for (int i = 0; i < mNumbers.length; i++) {

           mNumbers[i].setOnClickListener(this);

           mNumbers[i].set

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值