Swift
1if !timer.isValid { 2 timer = Timer.scheduledTimer(timeInterval:0.01,target: self,selector: #selector(self.down),userInfo:nil,repeats:true) 3 } 4 5 self.collectionView!.register(UICollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier) 6 } 7 let redCellIndex: Int = Int.random(in: 0..<12) 8 9 func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { 10 let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) 11 // indexPath.row が redCellIndex と一致した場合は赤に、そうでなければ黒にする 12 cell.backgroundColor = self.redCellIndex == indexPath.row ? .red : .black 13 14 return cell 15 16 } 17 func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { 18 point = point+1 19 pointLabel.text = String(point) 20 } 21 22 func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { 23 return 12 24 }
今作っているゲームの一部なのですが、cellをまとめて12個配置しているので、12個のcellどれを押してもスコアに反映されてしまいます。
上記でランダムで12個のうち11個のcellが黒色、1個が赤色になる処理をしました。
その赤のcellだけがスコアに反映されるcodeを教えていただけると幸いです。
回答1件
あなたの回答
tips
プレビュー