我在 UINavigationController 中嵌入了一个 UITableViewController。我只在 iOS 6 中使用 Storyboard。当我点击 Reports Row 时,我会在右侧看到一个不错的 Push 动画。当我按下 Auto Generated Back 按钮时,我的导航标题会消失并动画到左侧,但我的 UITableView 突然出现了。我的目标是让 UITableview 有一个标准的推送动画,就像按下后退按钮时的标准一样。希望这是帮助我调试所需的相关代码。我完全不知所措。当我向上导航导航树时,我在深入研究的每个视图中都看到了相同的行为。它们都是 UITableViewController 的子类。
在我获得更多声望点之前,我无法发布我的 Storyboard 的图片。如果需要帮助查看层次结构,我可以通过电子邮件向某人发送一张照片。
我的故事板层次结构是:
UITabviewController
-UINavigationViewController
--ReportsVC
---AvaliableEquipmentVC
----AvaliableEquipmentDetailVC
报告VC.h
#import <UIKit/UIKit.h>
@interface ReportsVC : UITableViewController
@property (strong, nonatomic) NSMutableArray *reportList;
@end
报告VC.m
#import "ReportsVC.h"
#import "AvaliableEquipment.h"
@interface ReportsVC ()
@end
@implementation ReportsVC
- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.reportList = [[NSMutableArray alloc] init];
// List Reports Here
[self.reportList addObject:@"Avaliable Equipment"];
[self.reportList addObject:@"Active Lease Business"];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
return [self.reportList count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"ReportNameCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
UILabel *reportTitle = (UILabel *)[cell viewWithTag:100];
NSString *text = [self.reportList objectAtIndex:indexPath.row];
reportTitle.text = text;
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
switch (indexPath.row)
{
case 0: [self performSegueWithIdentifier:@"AvaliableEquipment" sender:nil]; break;
case 1: [self performSegueWithIdentifier:@"ActiveLeaseBusiness" sender:nil]; break;
}
}
在我的 AvaliableEquipmentVC 中,除了查询 JSON 列表以获取我的 TableView 数据之外,我没有做任何特别的事情。当我按下通过情节提要自动生成的后退按钮时,我没有返回 UITableViewController ReportsVC 的动画。