zoukankan      html  css  js  c++  java
  • lua中实现倒计时

    今天在开发的时候,涉及到了使用倒计时来显示。

    首先自己的思路是:

    1、设计显示的Lable。

    2、对传入的时间进行处理,转成字符串00:00:00。通过调用回调函数来控制一秒刷新一次。

    转换算法:

    1 h = math.floor(time / 3600),   
    2 m = math.floor((time % 3600) / 60),   
    3 s = math.floor((time % 3600) % 60)。  

    3、设置回调函数,通过延时一秒和调用Label显示函数。

    代码如下:

     1 function TimeNumLayer:__init()  
     2     Layer.__init(self)  
     3     
     4     self.start_time = 0  
     5     self.run_time = 0  
     6     
     7     self.time_label = Label.CreateWithString(" ", GlobalConfig.FontType, 10)  
     8     self:AddChild(self.time_label)  
     9     self.time_label:SetPosition(0, 0)  
    10     
    11     self.cd_time = self.cd_time or 0  
    12     self:Start()  
    13 end  
    14   
    15 function TimeNumLayer:Update(interval)  
    16     self.run_time = self.run_time + interval  
    17     local cd_time = 0  
    18     
    19     if self.cd_time > 0 then   
    20     cd_time = self.cd_time - self.run_time  
    21     end  
    22     
    23     if cd_time < 0 then  
    24     cd_time = 0  
    25     end  
    26     self.time_label:SetString(LogicHandle.Get24FormatStr(cd_time))  
    27 end  
    28   
    29 function TimeNumLayer:Start()  
    30     self.start_time = game_app.game_server_time  
    31     self.cd_time = game_app.pet_call_info.PerfectTime  
    32     self.run_time = 0  
    33 end  
  • 相关阅读:
    grunt in webstorm
    10+ Best Responsive HTML5 AngularJS Templates
    响应式布局
    responsive grid
    responsive layout
    js event bubble and capturing
    Understanding Service Types
    To add private variable to this Javascript literal object
    Centering HTML elements larger than their parents
    java5 新特性
  • 原文地址:https://www.cnblogs.com/AaronBlogs/p/7615883.html
Copyright © 2011-2022 走看看