我想在表格视图中显示自定义单元格。我正确地完成了这些步骤
在我的表视图控制器类中我做了这些事情
但是当我运行应用程序时,设计的单元格不会显示。那里只有空行。
我做错了什么......我无法理解......请有人帮助我..
下面是我的代码
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"cell";
// UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
duplicateCell *cell = (duplicateCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
cell.delegate_D = self;
// TacleCell *cell = (TacleCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
//cell.delegate = self;
// Configure the cell...
NSArray* currentDuplicates = [self.duplicateArray objectAtIndex:indexPath.row];
NSLog(@"DUPLICATE IN DUPLICATE:%@",currentDuplicates);
cell.Name_D.text = @"test name";
return cell;
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
//#warning Potentially incomplete method implementation.
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
//#warning Incomplete method implementation.
// Return the number of rows in the section.
NSLog(@"COUNT:%d@",[self.duplicateArray count]);
return [self.duplicateArray count];
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Uncomment the following line to preserve selection between presentations.
// self.clearsSelectionOnViewWillAppear = NO;
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
//self.navigationItem.rightBarButtonItem = self.editButtonItem;
[self.tableView registerClass:[duplicateCell class] forCellReuseIdentifier:@"cell"];
self.title = @"Duplicate Req";
self.duplicateArray = [TableViewController getDuplicateList];
NSLog(@"DUPZ %@",self.duplicateArray);
}
请某人帮助我......
编辑:下面的图片将帮助您了解我的情况,我认为......
这是我的故事Bord ..你可以看到最后一个视图控制器(在右下角)是我正在谈论的那个。一个留在它旁边做同样的功能,但它就像一个魅力。我应用相同的代码,遵循相同的步骤。为什么这不能告诉我正确的结果..?
我已经解决了问题......我有一个错误的观点。我做了什么,我在两个表视图之间创建了一个视图并在我的警报视图中执行了...现在工作很精细......
感谢每个人指导我......
答案 0 :(得分:0)
当deque没有收到细胞时,你需要初始化细胞。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"cell";
// UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
duplicateCell *cell = (duplicateCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if(cell == nil)
{
cell = [[duplicateCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
答案 1 :(得分:0)
使用xib创建自定义UITableViewCell类并在xib中绘制单元格。
然后在tableView类
中使用此代码- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"cell";
duplicateCell *cell = (duplicateCell *)[tableView dequeueReusableCellWithIdentifier: cellIdentifier];
if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"duplicateCell" owner:self options:nil];
cell = [nib objectAtIndex:0];
}
cell.nameLabel.text = [tableData objectAtIndex:indexPath.row];
cell.thumbnailImageView.image = [UIImage imageNamed:[thumbnails objectAtIndex:indexPath.row]];
cell.prepTimeLabel.text = [prepTime objectAtIndex:indexPath.row];
return cell;
}