2017-09-26 37 views
0

我一直在尝试没有结果从结构数组中挑选一个随机问题。 有人可以帮助我做到这一点吗?如何随机结构数组?

我在显示器的左侧有一个ImageView,右侧有3个答案。我试图从这个数组中随机加载..并加载一个新的图像与他们的答案,每次我按Next。如果可能的话..我想没有重复加载只有15道题..

这里是我的结构代码..

var currentQuestion: Question? 
var currentQuestionPos = 0 

struct Question { 
    let image: UIImage 
    let answers: [String] 
    let correctAnswer: Int 
    let corect: String 
} 

var questions: [Question] = [ 
    Question(
     image: UIImage(named: "palla")!, 
     answers: ["cerchio", "palla", "aereo"], 
     correctAnswer: 1, 
     corect: "palla"), 
    Question(
     image: UIImage(named: "guanto")!, 
     answers: ["guanto", "maglietta", "calzino"], 
     correctAnswer: 0, 
     corect: "guanto"), 
    Question(
     image: UIImage(named: "casa")!, 
     answers: ["albero", "macchina", "casa"], 
     correctAnswer: 2, 
     corect: "casa"), 
    Question(
     image: UIImage(named: "cerchio")!, 
     answers: ["cerchio", "sole", "palla"], 
     correctAnswer: 0, 
     corect: "cerchio"), 
    Question(
     image: UIImage(named: "lego")!, 
     answers: ["bambola", "lego", "panino"], 
     correctAnswer: 1, 
     corect: "lego"), 
    Question(
     image: UIImage(named: "chiavi")!, 
     answers: ["porta", "pizza", "chiavi"], 
     correctAnswer: 2, 
     corect: "chiavi"), 
    Question(
     image: UIImage(named: "tazza")!, 
     answers: ["tazza", "forchetta", "piatto"], 
     correctAnswer: 0, 
     corect: "tazza"), 
    Question(
     image: UIImage(named: "aereo")!, 
     answers: ["bicicletta", "gelato", "aereo"], 
     correctAnswer: 2, 
     corect: "aereo"), 
    Question(
     image: UIImage(named: "macchina")!, 
     answers: ["televisore", "macchina", "pattini"], 
     correctAnswer: 1, 
     corect: "macchina"), 
    Question(
     image: UIImage(named: "libro")!, 
     answers: ["scatola", "foglio", "libro"], 
     correctAnswer: 2, 
     corect: "libro"), 
    Question(
     image: UIImage(named: "piano")!, 
     answers: ["piano", "chittara", "arpa"], 
     correctAnswer: 0, 
     corect: "piano"), 
    Question(
     image: UIImage(named: "dadi")!, 
     answers: ["dadi", "ghiaccio", "cubo"], 
     correctAnswer: 0, 
     corect: "dadi"), 
    Question(
     image: UIImage(named: "pizza")!, 
     answers: ["hamburger", "panino", "pizza"], 
     correctAnswer: 2, 
     corect: "pizza"), 
    Question(
     image: UIImage(named: "palla")!, 
     answers: ["cerchio", "palla", "aereo"], 
     correctAnswer: 1, 
     corect: "palla") 
] 

感谢,拉杜

回答

0
  1. 复制阵列问题。
  2. 然后在0和复制数组的计数之间创建一个随机索引。
  3. 弹出该索引处的元素。
  4. 当复制的数组的计数大于零,去2.
+0

感谢您的建议...但你失去了我:)你能举个例子吗? –