我有一个UITableView,在我的.h文件中声明如下:
@interface EnterInviteCodeController : UIViewController
@property (weak, nonatomic) IBOutlet UITableView *itemList;
@end
然后我在我的.m文件中声明它就像这样。
#import "EnterInviteCodeController.h"
@interface EnterInviteCodeController ()
@property (nonatomic, retain) NSArray *items_array;
@end
@implementation EnterInviteCodeController
@synthesize itemList; // UITableView
但是当我尝试填充列表时,没有任何项目出现。这是我填充列表的方式。我对服务器进行远程调用以获取项目。然后当服务器返回数据时,我尝试这样做:
items_array = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
[self.itemList reloadData];
dispatch_sync(dispatch_get_main_queue(), ^{
[self.itemList reloadData];
});
但数据没有显示出来。有谁知道我在这里缺少什么?
谢谢!
答案 0 :(得分:5)
您需要实施的最低限度:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
和
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
并说你实现了UITableViewDataSource。
@interface EnterInviteCodeController : UIViewController <UITableViewDataSource>
还要确保将文件所有者设置为表的委托。