Also versuche ich meine UITableView
mit Datenbankinformationen in meinem Firebase-Konto zu füllen. Dies ist in Xcode8, Swift 3, mit UIKit mit allen erforderlichen Abhängigkeiten in meinem Pod installiert.Füllen Sie UITableView mit Firebase Datenbankinformationen
Das Format innerhalb Firebase ist wie folgt:
Cell:
1:
name: ""
artist: ""
picture: ""
url: ""
2:
name: ""
artist: ""
picture: ""
url: ""
Cont...
Hier ist mein Code in meiner viewDidLoad()
Funktion:
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
//Set firebase refferences
dbRef = FIRDatabase.database().reference()
cellRef = dbRef?.child("Cells")
cellRef?.observe(FIRDataEventType.childAdded, with: {
(snapshot: FIRDataSnapshot) in
let artist = snapshot.childSnapshot(forPath: "artist").value as! String
let title = snapshot.childSnapshot(forPath: "title").value as! String
let picture = snapshot.childSnapshot(forPath: "picture").value as! String
let vidURL = snapshot.childSnapshot(forPath: "url").value as! String
print("\(artist) \n\(title) \n\(picture) \n\(vidURL)")
let youtubeURL = NSURL(string: vidURL)
let youtubeRequest = NSMutableURLRequest(url: youtubeURL! as URL)
youtubeRequest.setValue("https://www.youtube.com", forHTTPHeaderField: "Referer")
let p1 = AddCell(imageURL: picture ,
videoURL: youtubeRequest,
songTitle: title,
artistName: artist)
self.addCells.append(p1)
})
}
Bitte beachte, dass ich meinen Tisch in meiner viewDidLoad()
Funktion von hartzucodieren in Informationen geprüft, wie folgt. Der folgende Code funktionierte perfekt und bot mir eine Tabelle mit den richtigen Informationen und Links zu den Videos.
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
let youtubeURL = NSURL(string: https://www.youtube.com/embed/Fx-EfjsRcBk)
let youtubeRequest = NSMutableURLRequest(url: youtubeURL! as URL)
youtubeRequest.setValue("https://www.youtube.com", forHTTPHeaderField: "Referer")
let p1 = AddCell(imageURL: http://theshotgunseat.com/wp-content/uploads/2015/03/sam-hunt-2014-promo-650x400.jpg,
videoURL: youtubeRequest,
songTitle: "Body Like A Back Road",
artistName: "Sam Hunt")
self.addCells.append(p1)
Wie Sie oben für die erste viewDidLoad()
Funktion sehen können, bitte ich die Informationen auszudrucken, die ich von Firebase erhalten und ich dies als ein Ergebnis innerhalb von meinem Projekt:
Sam Hunt
Body Like A Back Road
http://theshotgunseat.com/wp-content/uploads/2015/03/sam-hunt-2014-promo-650x400.jpg
https://www.youtube.com/embed/Fx-EfjsRcBk
Keith Urban
The Fighter
https://pbs.twimg.com/profile_images/714823132851400707/bKM-rUs_.jpg
https://www.youtube.com/embed/GzT4p-OaJ5c
Ich bin mir sicher, dass Sie wissen, dass mein Problem darin besteht, dass es beim Laden direkt von Firebase nicht in meine Tabelle geladen wird, sondern genau dann, wenn ich es für einen bestimmten Song fest codiere.
Jede Hilfe wäre toll, und wenn es etwas gibt, was ich vermisst habe zu erklären, tut mir leid, aber bitte fragen Sie, damit ich klären kann!