gpt4 book ai didi

swift - 解析 : check column then use data in that row

转载 作者:行者123 更新时间:2023-11-28 06:52:36 25 4
gpt4 key购买 nike

enter image description here

是否可以检查 Parse 列 “ID” 是否为 0(任何数字) 然后如果 0(列中的那个) 等于 indexPath.row 0(第一个单元格)它在 Parse 中显示 0 行的数据?上图是viewcontroller类,tableview单元格数据在另一个类中。

ID: 将使用 indexPath.row

检查的编号

navTitle:导航栏标题

文章标题:UILabel

写成:UILabel

日期: UILabel

文章:UITextView

Edit for possible duplicate:这不是重复,另一个问题回答了如何使用 prepareForSegue 将数据从单元格移动到 View Controller 。这个问题询问如何在可能的情况下检查 Parse 上的列,如果该列中的数字与 indexPath.row 匹配,它将使用该数字对应的行中的数据。

最佳答案

我现在了解到您希望在详细信息 View Controller 中显示适合给定索引路径的数据,当他们点击位于所述索引路径的单元格时。这是假设您在 TableView 中正确显示了适当的数据,现在的问题是如何获取并显示用户在新 View Controller 中点击的行的相关数据。

为此,您可以向详细 View Controller 添加一个内部属性,即 Int。 .将此属性设置为 TableView 的选定索引路径的 row在显示详细 View Controller 之前,可能在 prepareForSegue 中例如。

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let detailVC = segue.destinationViewController as? DetailViewController {
if let selectedIndexPath = self.tableView.indexPathForSelectedRow {
detailVC.integerIdentifier = selectedIndexPath.row
}
}
}

现在在该详细 View Controller 中,您可以访问属性的值并在给定该值的情况下从 Parse 查询所需的信息。 (并且您可能希望向用户显示一些反馈,以告知他们您正在下载要显示的适当数据。)例如,您可以在从 viewDidLoad 调用的函数中包含以下代码。 :

let query = PFQuery(className: "eventsDetail")
query.whereKey("ID", equalTo: self.integerIdentifier)
query.getFirstObjectInBackgroundWithBlock { (detail: PFObject?, error: NSError?) -> Void in
//update your labels etc using the detail (Optional) PFObject
}

我想指出,重要的是,这不是在 Parse 中存储数据的好方法。人们不应该将数据与它的显示方式联系起来,这里的情况就是将标识符与索引路径联系起来,强制 ID 为 0 的项目神奇地成为适合表中第一个单元格的文章详细信息。您可能希望重新访问数据库设计。例如,您的其他用于生成事件列表的类可能有一个指向事件详细信息类的指针,这将允许您在选择事件之前获取事件详细信息,而不必再次查询详细信息。



原答案:
我知道您想在 TableView 中显示您应用中此 Parse 类中的数据,其中第一个 TableView 单元格显示 ID 0 的数据,第二个单元格显示 ID 1 的数据,依此类推。

为此,您需要查询此类并在“ID”列上应用升序。您将得到一个按需要排序的 PFObjects 数组 - 从最低到最高 ID,您可以将其用于 TableView 的数据源以将它们一对一映射。

您的查询可能看起来像这样:

let query = PFQuery(className: "Article")
query.orderByAscending("ID")
query.findObjectsInBackgroundWithBlock { (articles: [PFObject]?, error: NSError?) -> Void in
//use articles array as the data source, update the interface
self.articles = articles
self.tableView.reloadData()
}

现在在您的 TableView 数据源方法中,使用此数组填充表:

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.articles.count
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let article = self.articles[indexPath.row]
//... configure cell, show article title, etc, return cell
}

关于swift - 解析 : check column then use data in that row,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34484390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com