【发布时间】:2012-10-31 18:20:45
【问题描述】:
我的应用有一个主从控制器。主控制器是一个 UITabBarController,每个选项卡都是一个 UITableViewController,包含不同类型的数据。
我计划在主详细视图上显示一个主标题/图像,但随后需要向主详细视图添加不同的子视图,以根据我使用的选项卡详细说明特定信息。
我目前正在我的
中添加相关的子视图- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
函数如下:
UIViewController *subview = [[UIViewController alloc] initWithNibName:@"ItemNotFoundViewController" bundle:nil];
subview.view.frame = CGRectMake(20, 160, subview.view.frame.size.width, subview.view.frame.size.height);
[self.detailViewController.view addSubview:subview.view];
但是,我认为这是一种糟糕的处理方式 - 每次有人单击表格单元格时,都会在先前添加的子视图堆栈顶部抛出另一个子视图,从而产生内存问题。
我想知道的是,ARC 会为我解决这个问题吗?我的方法可以通过吗?并且即使可以通过,有没有更好的方法来做到这一点?
【问题讨论】:
标签: ios uiview master-detail