【问题标题】:Lua countdown timer for months and years几个月和几年的 Lua 倒数计时器
【发布时间】:2016-04-19 12:36:36
【问题描述】:

下面是一个用 LUA 编写的 Corona SDK 倒数计时器示例。 我将如何为此添加天、月和年?

local function updateTime()
-- decrement the number of seconds
secondsLeft = secondsLeft - 1

-- time is tracked in seconds.  We need to convert it to minutes and seconds
local minutes = math.floor( secondsLeft / 60 )
local seconds = secondsLeft % 60

-- make it a string using string format.  
local timeDisplay = string.format( "%02d:%02d", minutes, seconds )
clockText.text = timeDisplay

结束

【问题讨论】:

    标签: lua coronasdk


    【解决方案1】:

    天(和小时)是微不足道的,但是几个月和几年呢?由于您没有时间戳告诉我们还剩多少秒,因此很难确切知道多少个月,具体取决于月份的长度(28、29、30 或 31 天)。如果我们也考虑闰年,年份也是如此。无论如何,这可能就足够了:

    local SECONDS_IN_HOUR = 60 * 60
    local SECONDS_IN_DAY = 24 * SECONDS_IN_HOUR
    local SECONDS_IN_MONTH = 30 * SECONDS_IN_DAY -- assuming an average of 30 days per month
    local SECONDS_IN_YEAR = 365 * SECONDS_IN_DAY
    
    local years = math.floor((secondsLeft / SECONDS_IN_YEAR) % 365)
    local months = math.floor((secondsLeft / SECONDS_IN_MONTH) % 12)
    local days = math.floor((secondsLeft / SECONDS_IN_DAY) % 30)
    local hours = math.floor((secondsLeft / SECONDS_IN_HOUR) % 24)
    local minutes = math.floor((secondsLeft / 60) % 60)
    local seconds = secondsLeft % 60
    

    【讨论】:

    • 例如,我希望倒计时从未来的自定义日期示例开始,01/04/2025 将显示(8 年、11 个月、10 天、11 小时等),为简单起见闰年和月中的天数不一定要准确(尽管我想稍后添加)
    • 好的,我明白了。好吧,我认为我的 sn-p 代码足以满足您的用例。
    猜你喜欢
    • 2016-11-17
    • 2017-10-20
    • 2019-05-19
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多