【问题标题】:Using arc4random for multiple variables对多个变量使用 arc4random
【发布时间】:2017-05-31 22:38:29
【问题描述】:

在我的应用程序中,我想在视图控制器上随机出现一个标题和艺术家,这是我的相关代码:

        var songTitle = ["Happy", "Sad"]
        var aristTitle = ["The Happy Band", "The Sad Band"]

    override func viewDidLoad() {
            super.viewDidLoad()


            var random = Int(arc4random_uniform(UInt32(songTitle.count)))

            var titleOn = songTitle[random]

            titleText.text = titleOn
            artistText.text = ???

所以,基本上,如果Happy这个标题随机出现,我希望艺术家是The Happy Band。但是,如果我也为艺术家使用 arc4random,那么艺术家就有可能成为 The Sad Band。我该怎么做呢? (我使用的是 Swift 3 和 Xcode 8)

【问题讨论】:

  • 为什么你认为艺术家有可能成为“悲伤乐队”?
  • 您可能希望将歌曲和艺术家打包在一个结构或对象中

标签: ios swift arc4random


【解决方案1】:

只需对两者使用相同的索引。

artistText.text = artistTitle[random]

【讨论】:

    【解决方案2】:

    您当然可以使用相同的随机数来索引 2 个不同的数组。但是,正如@Alexander 在他的评论中建议的那样,创建一个结构数组会更好

    struct Song {
        var songTitle: String
        var aristTitle: String
    }
    
    var songs: [Song] = [
        Song(songTitle: "Happy", aristTitle:"The Happy Band"),
        Song(songTitle: "Sad", aristTitle:"The Sad Band")
    ];
    
    
    let songIndex = Int(arc4random_uniform(UInt32(songs.count)))
    let aSong = songs[songIndex]
    let songTitle = aSong.songTitle
    let artist = aSong.aristTitle
    

    【讨论】:

      猜你喜欢
      • 2016-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多