我最近开始了 iOS 应用程序开发。
我有一个关于从 UITableViewController 到 UIViewController 的问题。单击表格单元格时不会调用“prepareForSegue”。
在我看来,代码和界面构建器设置很好。Segue ID 已正确设置。我还在 navigationVC 中嵌入了 UITableVC。我在 prepareForSegue 中设置了断点,但它并没有停在那里,也没有生成日志。
通过在互联网上研究提示,我了解到使用 didSelectRowAtIndexPath 是解决我问题的方法之一。但我想通过使用情节提要来了解解决方案。
这可能是一个基本问题,但如果有人可以给我一些提示,那可能会很有帮助。
谢谢你,
@interface test2TVC ()
@property(strong,nonatomic) NSArray *items;
@end
@implementation test2TVC
- (void)viewDidLoad
{
[super viewDidLoad];
self.items = @[@"item1", @"item2", @"item3", @"item4",
@"item5", @"item6", @"item7", @"item8"];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSLog(@"test log");
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [self.items count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
cell.textLabel.text = [self.items objectAtIndex:indexPath.row];
return cell;
}
@end