TableViewCell 中的 UIImage 推送单元格分隔符
Posted
技术标签:
【中文标题】TableViewCell 中的 UIImage 推送单元格分隔符【英文标题】:UIImage in TableViewCell pushes Cell Separator 【发布时间】:2014-02-16 20:26:56 【问题描述】:我已将 UIImage 添加到我的表格视图单元格中。但是,UIImage 将分隔符推到右侧,以便为 UIImage 腾出空间。我想找到一种方法让分隔符包含 UIImage 而不会被推过去。这是我的表格视图单元格的图片。
这是我的 cellForRowAtIndexPath 方法和图像代码:
-(UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell =
[tableView dequeueReusableCellWithIdentifier:CellIdentifier
forIndexPath:indexPath];
Exercise *tempPlaceholder = [exercisesInTable objectAtIndex:indexPath.row];
NSString *exerciseDisplayName = tempPlaceholder.exerciseName;
exerciseDisplayName = [exerciseDisplayName capitalizedString];
exerciseDisplayName =
[exerciseDisplayName stringByReplacingOccurrencesOfString:@"_"
withString:@" "];
cell.textLabel.text = exerciseDisplayName;
cell.imageView.image = [UIImage imageNamed:@"quads.png"];
return cell;
如果有人能帮我解决这个问题,我将不胜感激。谢谢。
【问题讨论】:
看看这个***.com/questions/18365049/… 谢谢,效果很好。 【参考方案1】:对于遇到此问题的其他人,使用:
[self.tableView setSeparatorInset:UIEdgeInsetsZero];
将填补 UIImage 和表格单元格分隔符之间的空白。
【讨论】:
【参考方案2】:尝试改变 imageView 框架的大小
cell.imageView.frame = CGRectMake(0, 0, 10.0, 10.0);
或者改变单元格的高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
return 40.0;
【讨论】:
【参考方案3】:您遇到的行为只会发生在 iOS 7 上,其中分隔符具有默认情况下随图像视图大小而变化的插图。
要删除此行为,只需将分隔符插入设置为零。但是,separatorInset
属性在 iOS 7.0
UITableView
上可用
所以你只需要在 ios 7 中删除插图。
可以查看表格视图是否响应setSeparatorInset:
doing
if ([self.tableview respondsToSelector:@selector(setSeparatorInset:)])
[self.tableview setSeparatorInset:UIEdgeInsetsZero];
【讨论】:
以上是关于TableViewCell 中的 UIImage 推送单元格分隔符的主要内容,如果未能解决你的问题,请参考以下文章
在自定义 tableviewcell 中更改 UIImage
将 UITableViewCell 高度设置为 UIImage 高度?
我无法将 TableViewCell 按钮连接到 TableViewController!如何将 TableViewCell 中的值连接到 TableViewController?