私はデータを持つtableviewcontrollerを持っています。ユーザーがセルをタップしたときにプッシュされる新しい詳細ビューを取得しようとしています。ロードするビューを取得することはできますが、データをより詳細に表示するラベルは更新されません。コードは次のとおりです。データがプッシュされたときにビューコントローラに渡されない
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
SearchDetailViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"searchDetailVC"];
Events *event = [events objectAtIndex:indexPath.row];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterLongStyle];
NSString *dateString = [dateFormatter stringFromDate:event.eventDate];
controller.title=event.eventName; //ONLY ONE THAT WORKS!
controller.eventName.text = event.eventName;
controller.eventAddress.text = event.eventAddress;
controller.eventDate.text = dateString;
controller.eventTime.text = event.eventTime;
controller.ratingView.image = [self imageForRating:event.eventRating];
controller.eventDistance.text = @"NOT YET IMPLEMENTED";
[self.navigationController pushViewController:controller animated:YES];
}
設定されているプロパティは、NavigationController navbarのタイトルだけです。私は何か劇的に間違っているのですか?
は、ビューの要素を指し示すeventName、eventAddressなどのアウトレットですか?新しいコントローラを押した時点でビューがロードされていないように見えます。おそらくビューコントローラのインスタンス変数にそれらを格納し、次に 'viewDidLoad'にUI要素を設定しますか? –