taskTable knows its data source because we tell it what it is:
Basically a table view needs to know which object is acting as its data source, so by using [color=#008000]self[/color], we are saying that BNRAppDelegate will be its data source.
Also, by declaring the [color=#008000]UITableViewDataSource[/color] protocol in the BNRAppDelegate header file we must implement the method:
and inside this method, to populate the cells within the table view with data we use
NSString *item = [tasks objectAtIndex:[indexPath row]];
[[c textLabel] setText:item];
which says that each cell of the table view contains an “item” (which is an NSString) from the “tasks” array.
Now, I am not sure exactly how to answer your question regarding “more than one array”, because as you see above we implicitly declare which array provides the data for the UITableViewCell’s, however if you wanted to supply more than one array as the data, then you would simply use some logic depending on what you actually wanted to achieve.
I hope this helps,