静态单元格不显示

时间:2012-10-03 14:16:51

标签: iphone uitableview ios5 cell

我指的是来自raywenderlich的教程,我已经完成了所有说法,但仍然没有显示我的静态单元格,对此有任何帮助....

但它可以在我的tableview中添加已连接的数据。

这是我的故事板中的屏幕。

enter image description here

这是我的模拟器屏幕。

enter image description here

更新1

当我更改这样的代码时,会显示部分,但仍然不显示行。

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

    // Return the number of sections.
    return 2;
}

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

    // Return the number of rows in the section.
    return 0;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    // Configure the cell...

    return cell;
}

enter image description here

在PlayerDetailVewController.h委托中,

    @class Player;
    @class PlayerDetailsViewController;

    @protocol PlayerDetailsViewControllerDelegate <NSObject>
    - (void)playerDetailsViewControllerDidCancel:
    (PlayerDetailsViewController *)controller;
    //- (void)playerDetailsViewControllerDidSave:
    //(PlayerDetailsViewController *)controller;
    - (void)playerDetailsViewController:
    (PlayerDetailsViewController *)controller 
                           didAddPlayer:(Player *)player;
    @end
@interface PlayerDetailsViewController : UITableViewController

@property (nonatomic, weak) id <PlayerDetailsViewControllerDelegate> delegate;

更新2

当我在这样的部分返回1中更改行时,

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

    // Return the number of sections.
    return 2;
}

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

    // Return the number of rows in the section.
    return 1;
}

并显示如下错误

2012-10-04 13:54:46.152 Rating[514:f803] *** Assertion failure in -[UITableView _createPreparedCellForGlobalRow:withIndexPath:], /SourceCache/UIKit_Sim/UIKit-1914.84/UITableView.m:6061
2012-10-04 13:54:46.154 Rating[514:f803] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath:'
*** First throw call stack:
(0x13cf022 0x1560cd6 0x1377a48 0x9b02cb 0xb3d28 0xb43ce 0x9fcbd 0xae6f1 0x57d21 0x13d0e42 0x1d87679 0x1d91579 0x1d164f7 0x1d183f6 0x1d17ad0 0x13a399e 0x133a640 0x13064c6 0x1305d84 0x1305c9b 0x12b87d8 0x12b888a 0x19626 0x29cd 0x2935)
terminate called throwing an exception(lldb) 

2 个答案:

答案 0 :(得分:2)

您是否在正确使用UITableView及其UITableViewCell的类中实现了委托和数据源?

另外你需要检查一下否。 UITableView

的数据源方法中的行和节的正确性

答案 1 :(得分:2)

你的日志说

'UITableView dataSource必须从tableView返回一个单元格:cellForRowAtIndexPath:'

这意味着cellforrowatindexpath不得返回任何值。 删除此方法,

(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath