2015-05-25 140 views
2

我正在解析一個小應用程序。它應該顯示名稱,這些名稱存儲在數組列中的解析用戶類中。TableView不顯示行

這裏是我的代碼:

@synthesize friendsList; 

-(void)viewDidLoad{ 
[super viewDidLoad]; 

    PFQuery*query = [PFUser query]; 
    [query getObjectInBackgroundWithId:@"myObjectId" block:^(PFObject *gameScore, NSError *error) { 

    if(error==nil){ 

     friendsList = [gameScore valueForKey:@"Friends"]; 

     NSLog(@"%@", friendsList); 

    } 
    else{ 
     NSLog(@"Error"); 
    } 

}]; 
} 


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { 

return 1; 

} 

- (NSInteger)tableView:(UITableView *)tableView  numberOfRowsInSection:(NSInteger)section { 

return [friendsList count]; 

} 


- (UITableViewCell *)tableView:(UITableView *)tableView  cellForRowAtIndexPath:(NSIndexPath *)indexPath { 


UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MainCell" forIndexPath:indexPath]; 

cell.textLabel.text = friendsList[indexPath.row]; 

return cell; 
} 

的問題是,當我加載從分析數據。它不會在桌子上顯示任何東西。

難道我宣佈friendsList likt這樣的:

friendsList = [NSMutableArray arrayWithObjects:@"Name1", @"Name2", nil]; 

它將工作。

+0

該列的名稱是什麼? – Kingofmit

+0

你打印[gameScore valueForKey:@「Friends」];並獲得了一個值的數組 –

回答

1

tableView是空白爲您顯示的tableView時friendsList不填充。

在完成塊重新加載tableView。 在你完成塊之後friendsList = [gameScore valueForKey:@"Friends"];語句添加以下代碼:

dispatch_async(dispatch_get_main_queue(), ^{ 
       [self.tableView reloadData]; // assuming your table view is tableView 
      }); 

希望這有助於!

+0

它有幫助。謝謝。 – Nanog000

1

我想你錯過分配陣列

friendsList = [[NSMutableArray alloc] init];