我正在尝试找到设置自定义UITableViewCell
布局的最佳途径。这是我想要实现的布局。
彩色部分代表一个图像视图。UIImageView
似乎悬垂在单元格的边缘。
但据我所知,这实际上是整个牢房。我知道单元格有多个不同的视图,如内容、背景,但不知道如何实现。
我曾在 IB 中尝试过,但我认为这太习惯了。如何创建一个像这样带有悬垂的单元格和单元格的自定义布局。
我正在尝试找到设置自定义UITableViewCell
布局的最佳途径。这是我想要实现的布局。
彩色部分代表一个图像视图。UIImageView
似乎悬垂在单元格的边缘。
但据我所知,这实际上是整个牢房。我知道单元格有多个不同的视图,如内容、背景,但不知道如何实现。
我曾在 IB 中尝试过,但我认为这太习惯了。如何创建一个像这样带有悬垂的单元格和单元格的自定义布局。
您不能将子视图设置在UITableViewCell
框架之外。
这是一种简单的方法来做你想做的事:
1) 将自定义单元格的背景更改为[UIColor clearColor]
. 您可以在cellForRowAtIndexPath:
方法中的接口构建器中执行此操作。
我假设这个灰色是你的颜色UITableView
。
这是具有清晰彩色背景的单元格的图片
UIView
2)在您的自定义单元格内,在单元格边缘放置一个带有填充的白色,模拟您的原始单元格,如下所示:
3)然后,只需根据需要添加其余的子视图。您可以在模拟原始单元格的白色 UIView 的上方而不是内部添加。它看起来像这样:
编辑
回答你的最后一个问题。好吧,在这种情况下,您必须创建自己的自定义选择。幸运的是,这非常简单。
首先,我假设你有一个UITableViewCell
. 因此,只需IBOutlet
在您的 customCell 中为UIView
代表我们的假细胞的白色创建一个 。我将其IBOutlet
称为containerView
.
然后,覆盖自定义单元格setSelected:animated:
内的方法并执行您想要的所有自定义选择行为。一个简单的例子是这样的:
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];
self.selectionStyle = UITableViewCellSelectionStyleNone;
self.containerView.backgroundColor = selected ? [UIColor blueColor] : [UIColor whiteColor];
}
在我的示例中,[UIColor blueColor]
是选择单元格时的颜色,[UIColor whiteColor]
是正常状态颜色。显然,您可以将其更改为您喜欢的任何其他颜色。
请参阅本教程: http: //www.appcoda.com/customize-table-view-cells-for-uitableview/,希望对您有所帮助。