"Show Timeline" Objective-C example build fail "self.dataSource = userTimelineDataSource;"




Following along with the Fabric/Twitter Kit Documentation to display User Timeline. However the code from the docs doesn’t build.

This is the code in my Timeline View Controller in the View Did Load.

   [[Twitter sharedInstance] logInGuestWithCompletion:^(TWTRGuestSession *guestSession, NSError *error) {
    if (guestSession) {
        TWTRAPIClient *APIClient = [[Twitter sharedInstance] APIClient];
        TWTRUserTimelineDataSource *userTimelineDataSource = [[TWTRUserTimelineDataSource alloc] initWithScreenName:@"fabric" APIClient:APIClient];
        self.dataSource = userTimelineDataSource; // <- build fail here 
    } else {
        NSLog(@"error: %@", [error localizedDescription]);

Xcode complains: "Property ‘datasource’ not found on object of type 'TimelineViewController ". Not sure why it’s acting up.

I have the “Log in with Twitter” button authenticating and logging in a user. Once completed it pushes the Timeline view onto the stack. What I would eventually like to do is configure it so that whichever user logged in has their timeline showing, but one step at a time right.

Any help is greatly appreciated!


Talked to a friend, helped me figure it out

originally had this

@interface TimelineViewController : UIViewController

Needed to change it to this

@interface TimelineViewController : TWTRTimelineViewController

In the .h of the TimeLineViewController file, previously I was subclassing UIViewController instead of the “TWTRTimelineViewController” from Twitter Kit. The original class doesn’t have a property of self.datasource. The Sub class of TWTRTimelineViewController on the other hand does.