【发布时间】:2013-12-12 07:07:11
【问题描述】:
我正在尝试将 Load More Cell 添加到我的表格视图中。从 5 行开始,当我单击“加载更多单元格”并添加更多 5 行时。所有工作正常,无需加载更多单元格有图像,但我不想要它。我试图修复它,但它不起作用。
表格开始 http://i.stack.imgur.com/Ld2ED.png
点击加载更多单元格后的表格 http://i.stack.imgur.com/A5xjE.png
这是我的cellForRowAtIndexPath:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
#define IMAGE_VIEW_TAG 99
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (indexPath.section == 0) {
//create new cell
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
//add AsyncImageView to cell
AsyncImageView *imageView = [[AsyncImageView alloc] initWithFrame:CGRectMake(5.0f, 5.0f, 50.0f, 50.0f)];
imageView.contentMode = UIViewContentModeScaleAspectFill;
imageView.clipsToBounds = YES;
imageView.tag = IMAGE_VIEW_TAG;
[cell addSubview:imageView];
[imageView release];
//common settings
cell.selectionStyle = UITableViewCellSelectionStyleNone;
cell.accessoryType = UITableViewCellAccessoryNone;
cell.indentationWidth = 44.0f;
cell.indentationLevel = 1;
//get image view
AsyncImageView *imgView = (AsyncImageView *)[cell viewWithTag:IMAGE_VIEW_TAG];
//cancel loading previous image for cell
[[AsyncImageLoader sharedLoader] cancelLoadingImagesForTarget:imgView];
//load the image
imgView.imageURL = [imageURLs objectAtIndex:indexPath.row];
//display image path
cell.textLabel.text = [tableData objectAtIndex:indexPath.row ];
}
else if (indexPath.section == 1) {
cell.textLabel.text = [NSString stringWithFormat:NSLocalizedString(@"Load More...", @"The text to display to load more content"), kNumberOfItemsToAdd];
cell.imageView.image = Nil;
cell.textLabel.textColor = [UIColor colorWithRed:0.196f green:0.3098f blue:0.52f alpha:1.f];
cell.textLabel.font = [UIFont boldSystemFontOfSize:12.f];
}
段数
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
if (numberOfItemsToDisplay == [tableData count]) {
return 1;
}
return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// return 5;
// return tableData.count;
if (section == 0) {
return numberOfItemsToDisplay;
} else {
return 1;
}
}
【问题讨论】:
-
想办法检测“加载更多”表格单元格,然后将imageView设置为nil
-
我设置 cell.imageView.image = Nil;但 Load More 单元格仍然有 Image
-
您能否更新您的代码以反映您在评论中提到的更改?
-
我设置我设置 cell.imageView.image = Nil;在“else if (indexPath.section == 1)”中,因为第 1 节中的 loadmore 单元
-
从您的图片来看,“加载更多”单元格似乎不在其自己的部分中。看起来它是第 0 节中的最后一行。您确定“加载更多”单元格在第 1 节中吗?
标签: ios uitableview