5

我有一个带有外部委托控制器的表格视图。尽管内容表视图数组被很好地填充,
numberOfSectionsInTableView:并且 -tableView: numberOfRowsInSection:被调用,
-tableView: cellForRowAtIndexPath:未被调用。

已发布的表视图以这种方式设置:

CompeticionViewController.h

....

@property (retain, nonatomic) IBOutlet UITableView *calendarioTable;
@property (strong, nonatomic)  calendarioViewController *calendarioController;

....

calendarioTable = [[UITableView alloc] init];

            calendarioController  = [[calendarioViewController alloc] init];

            [calendarioTable setDelegate:calendarioController];

            [calendarioTable setDataSource:calendarioController];

            calendarioController.calendarioArray = [[NSMutableArray alloc] init];

            [calendarioController.calendarioArray addObjectsFromArray: self.calendarioarray];

            [calendarioTable reloadData];

编辑:

calendarioViewController.m

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

    return 1;
}

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

    return [calendarioArray count];

}

非常感谢

4

3 回答 3

4

在 .xib 文件中链接委托和数据源与文件的所有者或写入

tableview.delegate=self

tableview.datasource=self; 
于 2012-05-17T13:48:26.683 回答
1

你已经习惯IBOulet了,tableview为什么你allocating把它当成它的not need memory already allocated

现在签入xib您的视图控制器,它tableviewbinded及其delegate提供datasourcefile owner.

------------------------------------------------- --------------------------------------

add这条线在viewDidLoad method

yourtableview.delegate=self

yourtableview.datasource=self; 

现在,在使用IBOuletfor之后,tableview您将把它与文件所有者和 ViewController 绑定interface implements<UITableViewDelegate>并且<UITableViewDataSource> protocols

现在check arrayprovidingtableview拥有content

编辑:添加或代码并完成格式化

于 2012-05-17T13:07:03.693 回答
0

确保您的 CompeticionViewController 接口实现了<UITableViewDelegate><UITableViewDataSource>协议。

于 2012-05-17T13:13:16.597 回答