OGeek|极客世界-中国程序员成长平台

标题: ios - 我在将数据从 UITableView 传递到第二个 View 时遇到问题 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:23
标题: ios - 我在将数据从 UITableView 传递到第二个 View 时遇到问题

我在使用“prepareForSegue”方法将数据发送到其他 View 时遇到问题……

我有一个表格 View ,其中填充了来自 sqlite 查询的结果。当我点击其中一个表格单元格时,它会将我引导到另一个 View ,其中我有一个标签,该标签将告诉我

的 ID 和名称

我有一个 NSString,它保存来自 SQLite 数据源的 ID 值。我想将该 id 传递给我的应用程序的第二个 View ,以使用它从基于该 id 的 sqlite 数据源中获取信息。

现在我已经编写了代码,它将信息从一个 View 传递到另一个 View ……但由于某种原因,这些信息是“不合格的”。这就是我的意思,我列出了 3 个山区eception、Far Side 和 Mt. Washington(在第一个 View 的 tableview 中列出)。当我点击华盛顿山时,它会转到第二个 View ,我设置的标签告诉我所选单元格的名称……。为空白。我点击导航栏上的返回按钮,再次点击华盛顿山,这次标签显示的是“华盛顿山”的名称。现在,当我返回并单击“远侧”时,标签显示“华盛顿山”。当我返回并再次单击“远端”时,标签变为“远端”。希望这是有道理的。

有人知道如何解决这个问题吗? 这是我的代码:

-(void)prepareForSegueUIStoryboardSegue *)segue senderid)sender{
    if([[segue identifier] isEqualToString"areaIDpush"]){
      RockViewController *rockRoutes = [segue destinationViewController];
      rockRoutes.rockID = areaID_fk;
      rockRoutes.rockName = areaName_fk;
    }
}



- (void)tableViewUITableView *)tableView didSelectRowAtIndexPathNSIndexPath *)indexPath {    
   UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
   areaID_fk = cell.detailTextLabel.text;
   areaName_fk = cell.textLabel.text;
}

- (void)viewWillAppearBOOL)animated {
[areaIDLabel setText:rockID];
[areaNameLabel setText:rockName];
[super viewWillAppear:animated];

}

希望这能帮助您了解我遇到问题的地方...任何形式的帮助都会很棒。谢谢!



Best Answer-推荐答案


将我的代码发送给好友,他帮助我了解出了什么问题。

这是正确的代码:

-(void)prepareForSegueUIStoryboardSegue *)segue senderid)sender{
        if([[segue identifier] isEqualToString"areaIDpush"]){
        RockViewController *rockRoutes = [segue destinationViewController];
        rockRoutes.rockID = areaID_fk;
        rockRoutes.rockName = areaName_fk;

        UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:self.tableView.indexPathForSelectedRow];
        rockRoutes.rockName = cell.textLabel.text;
        rockRoutes.rockID = cell.detailTextLabel.text;
    }
}

- (void)tableViewUITableView *)tableView didSelectRowAtIndexPathNSIndexPath *)indexPath {
}

关于ios - 我在将数据从 UITableView 传递到第二个 View 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8641168/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4