-1

我有一个浮点值,我需要将我的浮点数转换为日期。例如,我有浮动 50,55,我想贴上这样的标签值:50 年 6 个月 6 小时 6 分钟 30,04 秒。

我想知道如何让这个标签每 0.01 秒改变一次以改变值。请为我提供将我的浮点值转换为日期格式的解决方案,我们将不胜感激。

这是我用于创建浮动的代码:

-(float)calculationResult{

    lifeTime = (kCountry +kEdu - kBirth - kSmo -kAlco+kDis+kHap+kDri+kMar)*kWei*kEnv*kSle;

    return lifeTime;
}
4

1 回答 1

1

以下代码将给定数量的“小数年”拆分为年、月、日和小时。它做了一个简化的假设,即每年有 365 天,而一个月正好是一年的 1/12。

float tmp = lifeTime;
int years = tmp;
tmp =  (tmp - years) * 12.;
int months = tmp;
tmp = (tmp - months) * 365./12.;
int days = tmp;
tmp = (tmp - days) * 24.;
int hours = tmp;

NSString *str = [NSString stringWithFormat:@"%d years %d month %d days %d hours ",
                 years, months, days, hours];

要定期更新标签,您可以使用NSTimer该类(但每 1/100 秒更新一次太频繁了)。

于 2013-08-03T19:42:34.007 回答