0

在我的视图控制器中,我刚刚添加了一个 TableView 。我在 file.h 和 file.m 中都输入了所有代表。即使在情节提要中也已正确输入了单元格的标识,并且自定义单元格已连接到我创建的单元格 ch 自定义类。

现在我把这段代码(使用 Parse.com)没有得到任何错误,代码总是超级干净,但是当我去使运行表没有显示任何数据时,就好像它连接到单元格一样或者如果没有重用标识符,则作为自定义类,而是两个步骤都已完成......我不明白为什么我什么都看不到......你能弄清楚错误是什么吗?

# import " FFFriendInAttesa.h "
# import " FFCustomCellFriendInAttesa.h "

@ interface FFFriendInAttesa ()    
@ end    
@ implementation FFFriendInAttesa


- (Void) viewDidLoad
{
    [super viewDidLoad ] ;
    self.FFTableView.delegate = self ;
    self.FFTableView.dataSource = self ;
    [self QueryForTableView ] ;
}


- ( NSInteger ) numberOfSectionsInTableView : ( UITableView * ) tableView
{
    return 1;
}

- ( NSInteger ) tableView : ( UITableView * ) tableView numberOfRowsInSection : ( NSInteger ) section {
    return [ self.UtentiInAttesa count] ;       
     }

- (void) { QueryForTableView
    
    PFQuery QueryForUserClass * = [ PFUser query ] ;
    [ QueryForUserClass findObjectsInBackgroundWithBlock : ^ ( NSArray * objects , NSError * error ) {
        if ( error) {
            self.UtentiInAttesa = objects ;
            NSLog ( @ " start query : % @ " , self.UtentiInAttesa ) ;
        }
    } ] ;
    [ self.FFTableView reloadData ] ;
}


- ( UITableViewCell * ) tableView : ( UITableView * ) tableView cellForRowAtIndexPath : ( NSIndexPath * ) indexPath
{
    static NSString * CellIdentifier = @ " CellaAmici " ;
    FFCustomCellFriendInAttesa * cell = [ self.FFTableView dequeueReusableCellWithIdentifier : CellIdentifier forIndexPath : indexPath ] ;
    if ( cell) {
        cell = [ [ FFCustomCellFriendInAttesa alloc ] initWithStyle : UITableViewCellStyleDefault reuseIdentifier : @ " CellaAmici "] ;
    }
        PFObject * user = [ self.UtentiInAttesa objectAtIndex : indexPath.row ] ;
        cell.FFNomeFriendLabel.text = [user objectForKey : FF_USER_NOMECOGNOME ] ;
          
    return cell ;
}

@ end

文件.h

#import <UIKit/UIKit.h>
#import <Parse/Parse.h>

@interface FFFriendInAttesa : UIViewController <UITableViewDataSource, UITableViewDelegate>

@property (strong, nonatomic) IBOutlet UITableView *FFTableView;
@property (strong, nonatomic) NSArray *UtentiInAttesa;

@end
4

1 回答 1

1

您的错误是您的表视图在其数据源更新之前刷新。你应该这样做:

- (void)QueryForTableView {
PFQuery QueryForUserClass * = [ PFUser query ] ;
[ QueryForUserClass findObjectsInBackgroundWithBlock : ^ ( NSArray * objects , NSError * error ) {
    // You put a wrong condition, objecs only returned when no error.
    if (!error) {
        self.UtentiInAttesa = objects ;
        NSLog ( @ " start query : % @ " , self.UtentiInAttesa ) ;
        // Refresh your tableview here
         [ self.FFTableView reloadData ] ;
    }
} ] ;

}
于 2013-10-25T00:26:47.770 回答