こんにちは!プログラミング初心者で現在アプリを作成中です。
現在はRealmとFSCalendarを使って、カレンダーアプリを作成中です。
至らないところも多々ありますが、ご教示いただけたら嬉しいです。
前提・実現したいこと
TableViewのCellに配列のインスタンスの値を順番に入れていきたいです。
例えば、
class Event: Object {
@objc dynamic var beer: Int
@objc dynamic var highball: Int
@objc dynamic var wine: Int
}
というクラスでTableViewのCell内のtextLabelに
---ーーー---ーーー
"(event.beer)"
---ーーー---ーーー
"(event.highball)"
---ーーー---ーーー
"(event.wine)"
---ーーー---ーーー
という値を入れていきたいのですが、やり方がわかりません。。
ご教示頂ければ幸いです。
Cell内に配列の値を入れていくまではできましたので以下に該当コードを載せておきます。
具体的には以下の図のように、カレンダーをタップするとその日付と紐付けされたデータがTableViewに表示されるようにしたいです。
該当のソースコード
swift
1class Event: Object { 2 @objc dynamic var date: String = "" 3 @objc dynamic var beer: Int 4 @objc dynamic var highball: Int 5 @objc dynamic var wine: Int 6}
swift
1var selectedDate: Date? 2let kindofdrinks = ["beer", "highball", "wine", "cocktail"] 3 //Tableview用 4 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 5 return 4 6 } 7 8 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 9 // セルを取得する 10 let cell: UITableViewCell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) 11 //selectedDateがnilではない場合 12 if let date = selectedDate{ 13//カレンダー上のタップした日付を取得 14 let formatter = DateFormatter() 15 formatter.dateFormat = "yyyy/MM/dd" 16 let drunkday = formatter.string(from: date) 17//Realmでデータを取得 18 let realm = try! Realm() 19 let events = realm.objects(Event.self).filter("date == %@", drunkday) 20 //ここからの処理がわかりません、、、、TableViewのCell上に日付と紐づいたEventインスタンスの値を順番に表示させたいのですが、、、 21 cell.textLabel?.text = kindofdrinks[indexPath.row] 22 return cell 23 }else{ 24 cell.textLabel?.text = "" 25 return cell 26 } 27 }
補足情報(FW/ツールのバージョンなど)
Xcode Version 10.1
Swift version 4.2.1
回答2件
あなたの回答
tips
プレビュー