前提・実現したいこと
セルの生成時にUserDefaultsに保存しておいたIntの配列型を読み込み、生成しているセルのrowと同じ数字がIntの配列型にあればそのセルにチェックマークを付けようと思っています。
発生している問題・エラーメッセージ
特にエラーメッセージは現れませんが、チェックマークがセルに付きません。
該当のソースコード
swift
1@IBOutlet weak var nameList: UITableView! 2 3func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 4 5 let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) 6 7 //UserDefaultsに保存されていたら 8 if UserDefaults.standard.object(forKey: "GroupData(GN)") != nil{ 9 check = UserDefaults.standard.object(forKey: "GroupData(GN)")! as! [Int] 10 print(check) //[2] 11 for check in check { 12 if indexPath.row == check { 13 //チェック入れる 14 print(indexPath) // [0, 2] 15 let cell = nameList.cellForRow(at:indexPath) 16 cell?.accessoryType = .checkmark 17 } 18 } 19 } 20 return cell 21 }
試したこと
print関数を使い変数にはきちんと値が代入されていることを確認しました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/28 05:14