我是iOS上的新手。我尝试了更多的时间来搜索,但结果不是我的愿望。第一个,我有自定义单元格的5行。单元格仅包含文本,我想在包含一个图像的单元格的任何索引处添加一行。那么我们如何实现呢?
答案 0 :(得分:7)
从评论中我了解到你是UITableView的新手。所以请仔细阅读一些给定的教程。您将能够在UITableView
中添加,删除编辑单元格 UITableView tutorial
tutorial 2
Table view programming guide
对于简单插入,请执行此操作
向视图添加按钮及其操作
-(IBAction)addNewRow:(UIButton *)sender
{
self.numberOfRows++; // update the data source
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableview insertRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}
修改
我认为你需要这样的东西
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *cellID1=@"CellOne";
NSString *cellID2=@"CellTwo";
UITableViewCell *cell = nil;
if (0 == indexPath.row) {
cell =[tableView dequeueReusableCellWithIdentifier:cellID1];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID1];
}
cell.textLabel.text = @"New Cell";
}
else
{
cell =[tableView dequeueReusableCellWithIdentifier:cellID2];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID2];
}
cell.imageView.image = [UIImage imageNamed:@"Test.jpg"];
}
return cell;
}
不要忘记递增细胞计数,即现在从numberOfRows返回6。
答案 1 :(得分:1)
您可以从视图控制器中的任何位置向表中插入行
[tableView beginUpdates];
[tableView insertRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation];
[tableView endUpdates];
给出正确的indexPaths
和行动画。
答案 2 :(得分:0)
在tableView:cellForRowAtIndexPath:
方法中,区分您希望单元格与图像的索引路径并将其添加到那里,否则只设置UITableViewCell的文本。