我問了這個問題,昨天
我也用隨機生成的 ID 試了一下
var ref: DocumentReference? = nil
但是在搜索時檢索似乎更加困難,因為如果可以的話,我希望它可以通過名稱或詩歌進行搜索。
db.collection(user).getDocuments()
{ (querySnapshot, err) in
if let err = err
{
print("Error getting documents: \(err)")
}
else
{
for document in querySnapshot!.documents
{
let poemName = document.get("Named") as! String
self.named = poemName
let namedPoem = document.get("Poem") as! String
self.poems = [namedPoem]
print("\(document.documentID) => \(document.data())")
}
}
}
我仍然只能在表格中加載一個單元格。
當我選擇已加載到表中的行時,我可以用名稱和詩歌完美地重新填充我需要的位置。
問題是表格仍然只加載最新/底部的檔案,如果我放 .reversed(),它會加載第一個。
以防萬一昨天問題的鏈接沒有被點擊......
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
if isSearching
{
return filteredArray.count
}
else
{
return poems.count
}
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
var array: String?
if isSearching
{
array = filteredArray[indexPath.row]
}
else
{
array = poems[indexPath.row]
}
let cell = mainTable.dequeueReusableCell(withIdentifier: cellId, for: indexPath) as UITableViewCell
cell.textLabel?.text = array
cell.accessoryType = .disclosureIndicator
let indicator = UIActivityIndicatorView()
cell.textLabel?.numberOfLines = 0
return cell
}
這個問題很可能與 UITableView 有關嗎?
請幫助我解決我缺少的內容或您需要查看的其他代碼。
或者甚至可以用另一種方式來做到這一點?
提前致謝。
uj5u.com熱心網友回復:
正如 Paulw11 在上述評論中提到的那樣
您的問題是,當您說self.poems = [namedPoem]要為一個陣列分配一個元素并且該陣列替換任何其他先前分配的陣列時。每個檔案都會呼叫一次閉包,因此您需要self.poems.append(namedPoem). 您可能還應該將 Firestore 檔案存盤在陣列中,而不是單個字串屬性中。Firestore 支持 Swift Codable 因此您可以將檔案直接映射到結構
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/528556.html
標籤:Google Cloud Collective IOS火力基地合适的视图谷歌云火库
上一篇:"jboss.deployment.subunit.undertow-deployment.UndertowDeploymentInfoService"=>java.lang
