A controller that manages and displays a directions list. The controller maintains its
own states internally based on the associated navigator. The directionsListView is updated
automatically based on navigator states.
Updates the data source from the latest navigator state and reload the list. Calling this
method before directionsListView is accessed for the first time results in no-op.
Invalidates the layout of the directionsListView. This should be called during events
such as rotations and view size changes. Calling this method before directionsListView is
accessed for the first time results in no-op.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-27 UTC."],[[["\u003cp\u003e\u003ccode\u003eGMSNavigationDirectionsListController\u003c/code\u003e manages and displays a directions list, updating automatically based on an associated navigator's state.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003edirectionsListView\u003c/code\u003e property provides access to the view displaying the directions, but it's lazy-loaded upon first access.\u003c/p\u003e\n"],["\u003cp\u003eThis controller is initialized with a \u003ccode\u003eGMSNavigator\u003c/code\u003e instance which drives the list's content and updates.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ereloadData\u003c/code\u003e and \u003ccode\u003einvalidateLayout\u003c/code\u003e methods allow for manual refreshing of the list data and layout, respectively, but are ineffective before the \u003ccode\u003edirectionsListView\u003c/code\u003e is accessed.\u003c/p\u003e\n"],["\u003cp\u003eDirect initialization using \u003ccode\u003einit\u003c/code\u003e is unavailable; instead, use \u003ccode\u003einitWithNavigator:\u003c/code\u003e to provide the necessary navigator instance.\u003c/p\u003e\n"]]],["The `GMSNavigationDirectionsListController` manages and displays a directions list, updating automatically based on the associated `navigator`'s state. Key actions include initializing with a `navigator` using `initWithNavigator:`, accessing the directions list view via `directionsListView`, updating the list with `reloadData`, and adjusting the view's layout via `invalidateLayout`. `reloadData` and `invalidateLayout` only work after `directionsListView` is accessed. The basic `init` is not allowed.\n"],null,["# GoogleNavigation Framework Reference\n\nGMSNavigationDirectionsListController\n=====================================\n\n @interface GMSNavigationDirectionsListController : NSObject\n\nA controller that manages and displays a directions list. The controller maintains its\nown states internally based on the associated `navigator`. The `directionsListView` is updated\nautomatically based on `navigator` states.\n- `\n ``\n ``\n `\n\n ### [directionsListView](#/c:objc(cs)GMSNavigationDirectionsListController(py)directionsListView)\n\n `\n ` \n The view that displays the directions list. The view is lazy loaded when it is accessed for the\n first time. \n\n #### Declaration\n\n Swift \n\n var directionsListView: UIView { get }\n\n Objective-C \n\n @property (nonatomic, readonly) UIView *_Nonnull directionsListView;\n\n- `\n ``\n ``\n `\n\n ### [-initWithNavigator:](#/c:objc(cs)GMSNavigationDirectionsListController(im)initWithNavigator:)\n\n `\n ` \n Initializes the controller with a `navigator`. \n\n #### Declaration\n\n Swift \n\n init(navigator: ../Classes/GMSNavigator.html)\n\n Objective-C \n\n - (nonnull instancetype)initWithNavigator:(nonnull ../Classes/GMSNavigator.html *)navigator;\n\n #### Parameters\n\n |-------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n | ` `*navigator*` ` | The controller automatically updates the list based on the current state of the `navigator` after [directionsListView](../Classes/GMSNavigationDirectionsListController.html#/c:objc(cs)GMSNavigationDirectionsListController(py)directionsListView) is accessed for the first time. |\n\n- `\n ``\n ``\n `\n\n ### [-reloadData](#/c:objc(cs)GMSNavigationDirectionsListController(im)reloadData)\n\n `\n ` \n Updates the data source from the latest `navigator` state and reload the list. Calling this\n method before [directionsListView](../Classes/GMSNavigationDirectionsListController.html#/c:objc(cs)GMSNavigationDirectionsListController(py)directionsListView) is accessed for the first time results in no-op. \n\n #### Declaration\n\n Swift \n\n func reloadData()\n\n Objective-C \n\n - (void)reloadData;\n\n- `\n ``\n ``\n `\n\n ### [-invalidateLayout](#/c:objc(cs)GMSNavigationDirectionsListController(im)invalidateLayout)\n\n `\n ` \n Invalidates the layout of the [directionsListView](../Classes/GMSNavigationDirectionsListController.html#/c:objc(cs)GMSNavigationDirectionsListController(py)directionsListView). This should be called during events\n such as rotations and view size changes. Calling this method before [directionsListView](../Classes/GMSNavigationDirectionsListController.html#/c:objc(cs)GMSNavigationDirectionsListController(py)directionsListView) is\n accessed for the first time results in no-op. \n\n #### Declaration\n\n Swift \n\n func invalidateLayout()\n\n Objective-C \n\n - (void)invalidateLayout;\n\n- `\n ``\n ``\n `\n\n ### [-init](#/c:objc(cs)GMSNavigationDirectionsListController(im)init)\n\n `\n ` \n Unavailable \n Use [-initWithNavigator:](../Classes/GMSNavigationDirectionsListController.html#/c:objc(cs)GMSNavigationDirectionsListController(im)initWithNavigator:) instead. \n\n #### Declaration\n\n Objective-C \n\n - (null_unspecified instancetype)init;"]]