所以我知道这个问题已被多次询问过,但它似乎对我不起作用。我已经尝试了一切。 ViewController.h
@interface ViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> {
NSMutableArray *tableData;
}
@property (nonatomic, retain) NSMutableArray *tableData;
@end
ViewController.m
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
SubTableView *secondView = [[SubTableView alloc] initWithNibName:@"SubTableView" bundle:nil];
if ([[tableData objectAtIndex:indexPath.row] isEqual:@"Campus"]) {
secondView.selected = 1;
//[subTable setTitle:[tableData objectAtIndex:indexPath.row]];
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"School"]) {
secondView.selected = 2;
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Admissions"]) {
secondView.selected = 3;
//[subTable setTitle:[tableData objectAtIndex:indexPath.row]];
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Boarding"]) {
secondView.selected = 4;
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Academics"]) {
secondView.selected = 4;
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Athletics"]) {
secondView.selected = 5;
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Jobs"]) {
secondView.selected = 6;
}
if ([[tableData objectAtIndex:indexPath.row] isEqualToString:@"Donate"]) {
secondView.selected = 7;
}
[self.navigationController pushViewController:secondView animated:YES];
}
我有一个NavigationController设置,虽然我不知道它是否在Storyboard中正确链接。
我在StoryBoard中设置了第二个视图控制器SubTableView,它有自己的.h和.m控制器。我有标识符“SubTableView”但它拒绝推动该视图。
我能想到的唯一可能的事情就是没有正确链接navigationController。但是我找不到任何可以使用它的东西。
如果我在
[self.navigationController pushViewController:secondView animated:YES];
它会击中并停止。但它不会推动新的观点。
答案 0 :(得分:0)
是SubTableView
或UIViewController
的子类UIView
?您需要将视图控制器推入堆栈,而不是视图。