--- title: Node Containers layout: docs permalink: /docs/containers-overview.html prevPage: intelligent-preloading.html nextPage: node-overview.html --- ### Use Nodes in Node Containers It is highly recommended that you use Texture's nodes within a node container. Texture offers the following node containers.
Texture Node Container UIKit Equivalent
ASCollectionNode in place of UIKit's UICollectionView
ASPagerNode in place of UIKit's UIPageViewController
ASTableNode in place of UIKit's UITableView
ASViewController in place of UIKit's UIViewController
ASNavigationController in place of UIKit's UINavigationController. Implements the ASVisibility protocol.
ASTabBarController in place of UIKit's UITabBarController. Implements the ASVisibility protocol.

Example code and specific sample projects are highlighted in the documentation for each node container. ### What do I Gain by Using a Node Container? A node container automatically manages the intelligent preloading of its nodes. This means that all of the node's layout measurement, data fetching, decoding and rendering will be done asynchronously. Among other conveniences, this is why it is recommended to use nodes within a container node. Note that while it _is_ possible to use nodes directly (without a Texture node container), unless you add additional calls, they will only start displaying once they come onscreen (as UIKit does). This can lead to performance degradation and flashing of content.