gpt4 book ai didi

ios - 我应该如何将歌曲持续时间表示/存储为属性?我想使用常见的歌曲持续时间格式,例如 "HH:MM:SS"

转载 作者:行者123 更新时间:2023-11-29 04:00:46 24 4
gpt4 key购买 nike

我有一个名为 Song 的自定义类。此类的每个实例都需要有一个表示其持续时间的属性,并且我希望该持续时间采用正常的“歌曲”格式,例如 HH:MM:SS。 Song 实例将从 JSON 网络调用接收数据,例如持续时间,并且它们也可能通过 Core Data 或某种其他方法进行持久化。

我可以选择哪些方式来存储此持续时间?我是否需要将它存储为像

这样的字符串
self.duration = @"0:2:14";

 self.duration = @"0.2.14";

将其存储为 NSDate 的 NSNumber 会更好吗?如果是这样,我如何将其转换为这些类型?如果我需要将其存储为字符串,是否有比分割冒号更好的方法将其转换为数字/时间间隔?

最佳答案

您应该将持续时间以秒(或毫秒,如果您想要精确的话)为单位存储为整数。然后在显示时间时将其转换为漂亮的格式,例如通过方法 -(NSString*)displayDuration

如果你像这样声明你的持续时间属性

@property (nonatomic) int duration;

然后你可以编写一个方法来获取 NSString 进行显示:

- (NSString*)displayDuration {
int remainingDuration = self.duration;
int seconds = remainingDuration%60;
remainingDuration/=60;
int minutes = remainingDuration%60;
remainingDuration/=60;
int hours = remainingDuration;
return [NSString stringWithFormat:@"%02d:%02d:%02d", hours, minutes, seconds];
}

关于ios - 我应该如何将歌曲持续时间表示/存储为属性?我想使用常见的歌曲持续时间格式,例如 "HH:MM:SS",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15872784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com