我不知道这是我只是缺少一个明显的解决方案还是什么原因,但我希望您能为我指明正确的方向。
我有一个firebase数据库,该数据库提供有关文章的信息,例如名称,img等,它还保存显示实际文章的网站URL,我正在使用UIWebView来显示具有相关内容的网站文章。
我现在正在按预期的方式运行WebView,但是URL进行了硬编码,因此仅显示一篇文章,并且我正在就如何获取文章URL从Firebase数据库传递到我的代码中一路走并与WebView一起使用,并根据用户按下的文章显示不同的文章。
我在下面提供了处理firebase请求的代码以及设置WebView的代码。
任何帮助将不胜感激。
var actions = $("table tr:last td:not(:first-child)").html();
这是WebView的代码
func fetchArticles() {
collectionView.dataSource = self
collectionView.delegate = self
let db = Firestore.firestore()
db.collection("articles").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
for document in querySnapshot!.documents {
let article = Article()
self.mapArticle(document: document, article: article)
self.articles.append(article)
}
self.collectionView.reloadData()
}
}
}
func mapArticle(document: QueryDocumentSnapshot, article: Article) {
var data = document.data()
article.title = data["title"].toString
article.ArticleImageName = data["article_Img"].toString
article.leauge = data["leauge"].toString
article.authorProfilePic = data["author_img"].toString
article.uploadDate = data["upload_Date"].toString
article.URL = data["URL"].toString
//...
}
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int{
return articles.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cellID", for: indexPath) as! hubArticle
let article = articles[indexPath.row]
cell.titleLable.text = article.title
cell.authorProfileView.loadImageUsingUrlString(urlString: article.authorProfilePic)
cell.subTitleLabel.text = article.leauge
cell.hubArticleThumbnailImageView.loadImageUsingUrlString(urlString: article.ArticleImageName)
return cell
}