Search code examples
objective-cios4pragma

pragma directive in UIViewController


When i create a UITableViewController class, the template has some #pragma directives:

#pragma mark -
#pragma mark View lifecycle

at the start and:

#pragma mark -
#pragma mark Table view data source

at the beginning of the implementation of the data source methods.
I know that #pragma is a compiler directive, but why do we need to notify the compiler of the above?
Does this mean that we have to give a #pragma directive every time we implement any kind of data source/delegate protocols?


Solution

  • You dont need to use them. They are simply for code "prettiness" and separating methods.

    In my screenshot example, they are used to draw the lines you see, separating delegates.

    #pragma mark - draws the line and #pragma mark My Delegates shows you whatever text you see in BOLD.

    alt text