Xcode - Segue问题

时间:2015-10-11 08:16:39

标签: objective-c xcode segue

我试图将一个变量从一个UITableViewController发送到另一个UITableViewController。更具体地说,我试图将文本标签的值(位于自定义单元格中)发送到在第二个视图控制器中创建的varibale。

我已经写了以下内容......但我认为它并不正确,因为import com.google.gson.Gson; ... List<User> userList = dao.getUsers(); System.out.println(new Gson().toJson(userList)); 方法不会触发。

有人可以看看,让我知道我哪里出错了吗?

提前致谢。

{{1}}

Homebrew

1 个答案:

答案 0 :(得分:1)

你确定你提到的方法被调用了。因为我没有看到任何方法调用:- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender tableView:(UITableView *)tableView

正如我所能找到的,正确的代码必须如下:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"CountryToState"]) {
        NSIndexPath *path = (NSIndexPath *) sender;
        NSLog(@"%@", path);

        TableViewCell *cell = (TableViewCell *)[self.tableView cellForRowAtIndexPath:path];
        NSString *countryRef = [[cell ReferenceLabel] text];
        NSLog(@"countryRef = %@", countryRef);

        TableViewControllerStates *TVCS = (TableViewControllerStates *)[segue destinationViewController];
        TVCS.receivedReferenceNumber = countryRef;
    }
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [self performSegueWithIdentifier:@"CountryToState" sender:indexPath];
}

因此,总结一下长时间的对话,你会错误地调用错误的prepareForSegue委托方法。