2017-07-17 124 views
-3

在我的iOS应用程序中,我有类似当天的报价。我如何每天更新“报价”。我有一个像每天执行功能(Swift)

var quotes = ["The most amazing quote in the world", "This makes no sense"] 

在一个变量的报价,我想它给它的viewDidLoad。非常感谢您的帮助!

+0

[每日新内容的可能的复制在应用程序](https://stackoverflow.com/questions/45090476/everyday-new-content-on-application) – GIJOW

回答

0

有很多方法可以做到这一点,例如,如果我们这样做了一个月例如每天报价只要确保有31个报价,你可以使用该月的一天索引你的报价数组:

let date = Date() 
let calendar = Calendar.current 
let dayOfMonth = calendar.component(.day, from: date) 

quoteOfDay = quotes[dayOfMonth] // Make sure you have 31 quotes 

更新:如果您想了解更多的随机你可以使用hashValue,则:

let date = Date() 
let dateIndex = Int(date.timeIntervalSince1970)/(60*60*24) 
let quoteOfDay = quotes[dateIndex % quotes.count] 
+0

它必须是完全31或可以更多? –

+0

如果你想要更多,那么你需要决定如何处理它,因为在一个日历月中最多有31天,所以它永远不会索引更高。如果你想索引更高,你可以考虑其他的方式来“索引”,比如从Unix开始时间开始的天数,并且以你可以索引的引号数为模。等等 – richardhsu

+0

如何随机'Int(arc4random_uniform(UInt32(quotes.count)))'?我会怎么做? –