在基于聊天的应用程序中,我有UITableView,它显示所有 friend 的名字,在didSelectRowAtIndex上,我使用chatViewController navigationcontroller方法将其推送到push

我有两个困惑:

1>当我按chatViewController时,我会这样

 chatViewController *cVc = [[chatViewController alloc]initWithFriendName:@"the name" andId:@"the id"];

可以有10个,50个或100个 friend ,为每个 friend 调用alloc init是否正确?

2>当用户点击“后退”按钮返回到好友列表时,chatViewController's当前实例将被销毁以释放内存时会发生什么情况?

最佳答案

  • 是的,如果此chatViewController实例用于该特定 friend 。
  • 后退按钮执行一个隐式的popViewControllerAnimated:并弹出
    导航堆栈中的chatViewController并销毁它(除非您有
    在某个地方保存了对该视图控制器的强引用)。

  • 因此,一次只会有一个chatViewController实例(在didSelectRowAtIndex并在被popViewControllerAnimated:销毁时
    用户返回到表格视图)。

    关于ios - 需要有关UIViewController生命周期的帮助,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16332792/

    10-11 06:58