iOS Texture <AsyncDisplayKit> ASViewController

ASViewControllerUIViewController的一个子类,它为承载ASDisplayNode层次结构添加了一些有用的特性。

ASViewController可以代替任何UIViewController,包括UINavigationControllerUITabBarControllerUISplitViewController,或者作为modal view controller使用。

使用ASViewController的好处:

  • 节省内存。一个离开屏幕的ASViewController将自动减小fetch数据的大小及其任何子对象的显示范围。这是大型应用程序中内存管理的关键。

  • ASVisibility功能。当在ASNavigationControllerASTabBarController中使用时,这些类知道使视图控制器可见所需的用户点击次数。

随着时间的推移,会添加更多的特性,因此最好将视图控制器从这个类中分离出来。

使用

UIViewController提供自己的视图。ASViewController在其指定的initializer中分配了一个要管理的node -initWithNode:。

考虑下面的ASViewController子类PhotoFeedNodeController,它来自ASDKgram示例项目,它希望使用 table node 作为其托管node。

此 table node 在其-initWithNode:指定的初始值设定项方法中被分配给ASViewController

- (instancetype)init
{
  _tableNode = [[ASTableNode alloc] initWithStyle:UITableViewStylePlain];
  self = [super initWithNode:_tableNode];
  
  if (self) {
    _tableNode.dataSource = self;
    _tableNode.delegate = self;
  }
  
  return self;
}

转换提示:如果你的应用程序已经有一个复杂的视图控制器层次结构,那么最好将它们都作为viewcontroller的子类。也就是说,即使您不使用ASViewController指定的初始值设定项initWithNode:,并且只以传统的UIViewController的方式使用ASViewController,如果您选择在应用程序的不同区域采用它,这将为您提供额外的节点支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值