0

私はIOSでInstagramの統合に取り組んでいます.すべてうまくいきます.ユーザーのフィードを取得し、それらをテーブルビューとスクロールビューに表示しています.ここで、ユーザーはページを更新できます.メソッドを更新している間配列内のオブジェクトがゼロであるため、呼び出されてクラッシュしました。次のコードを使用してメソッドを呼び出しました。

-(IBAction)loginAction:(id)sender
{
        AppDelegate* appDelegate_new = (AppDelegate*)[UIApplication sharedApplication].delegate;
      [appDelegate_new.instagram authorize:[NSArray arrayWithObjects:@"comments", @"likes", nil]];


      if ([appDelegate.instagram isSessionValid]) {

    //  NSLog(@"ViewDidLoad Session Valid");

          loginView.hidden=YES;
          crossButton.hidden=YES;
          settingsButton.hidden=NO;
          noticeView.hidden=YES;

          [self.view addSubview:feedsView];
         // [self.logOutView removeFromSuperview];
          self.feedsView.frame=CGRectMake(0, 0, 240, 300);
          NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"users/self/feed", @"method", nil];
          [appDelegate.instagram requestWithParams:params
                                    delegate:self];
    } 
}

呼び出されたメソッドはこのようなものでした

      - (void)request:(IGRequest *)request didLoad:(id)result
      {

          [self performSelector:@selector(startspinner) withObject:nil afterDelay:0.1];
          self.data = (NSMutableArray *)[result objectForKey:@"data"];
        // NSLog(@"Data Count is %@",[self.data description]);
          createdArray=[[NSMutableArray alloc]init];

        //*****Here I am performing Json Parsing******//

      }

リフレッシュ中に上記のリクエストメソッドを再度呼び出しています

    - (void)dropViewDidBeginRefreshing:(ODRefreshControl *)refreshControl
      {
            [createdArray removeAllObjects];

            NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"users/self/feed", @"method", nil];
            [appDelegate.instagram requestWithParams:params
                                delegate:self];
            [self performSelector:@selector(refreshData) withObject:nil afterDelay:5.0];
      }

どこが間違っているのか教えてください。訂正していただければ幸いです。よろしくお願いします。

4

1 に答える 1

0

それを試してみてください....

[NSTimer scheduledTimerWithTimeInterval:0.5f
                                 target:self
                               selector:@selector(showTime)
                               userInfo:NULL
                                repeats:YES];

- (void)showTime
{
    NSLog(@"Method called");
}

メソッドの呼び出しには NSTimer を頻繁に使用します。
私が助けてくれることを願っています。

于 2013-05-02T05:34:13.377 に答える