我已经在网上搜索以了解如何创建自定义表格视图(因为我想隐藏特定视图的导航栏)并且我正在遵循每个步骤。但是,我的结果没有显示表格。
这是我的 .h 文件
#import <UIKit/UIKit.h>
@interface HallFameControllerViewController : UIViewController
<UITableViewDelegate, UITableViewDataSource>{
NSArray *leaders;
}
@property (strong, nonatomic) NSArray *leaders;
@end
和我的 .m 文件
#import "HallFameControllerViewController.h"
@interface HallFameControllerViewController ()
@end
@implementation HallFameControllerViewController
@synthesize leaders;
- (void)viewDidLoad
{
[super viewDidLoad];
leaders = [NSArray arrayWithObjects:@"Player #1", @"Player #2", @"Player #3", nil];
}
- (void) viewDidUnload{
self.leaders = nil;
}
- (void) viewWillAppear:(BOOL)animated{
[self.navigationController setNavigationBarHidden:NO];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 0;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
return [leaders count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
// Configure the cell.
cell.textLabel.text = [self.leaders objectAtIndex: [indexPath row]];
return cell;
}
@end
在我的故事板中,我创建了一个 ViewController,里面有 1 个标签和 1 个 TableView。我已将我的 ViewController 的自定义类设置为“HallFameControllerViewController”和数据源,将表格视图的委托也设置为“HallFameControllerViewController”。结果,标签在那里但没有表格。
我在侧面 .m 文件中有一些 printf() 语句,执行了 viewDidLoad() 但 cellForRowAtIndexPath() 没有!
我在这里做错了什么?此外,什么是 cellIdentifier,为什么设置为“Cell”(自动)?
提前致谢。