我试图将一个变量从一个UITableViewController发送到另一个UITableViewController。更具体地说,我试图将文本标签的值(位于自定义单元格中)发送到在第二个视图控制器中创建的varibale。
我已经写了以下内容......但我认为它并不正确,因为import com.google.gson.Gson;
...
List<User> userList = dao.getUsers();
System.out.println(new Gson().toJson(userList));
方法不会触发。
有人可以看看,让我知道我哪里出错了吗?
提前致谢。
{{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
委托方法。