我有一个自定义的UITableView
单元格,该单元格的UIImageView
大小与顶部单元格的宽度大小相同,在其下方有一个UILabel
。UITableViewCell
具有imageView
属性。如果设置了图像视图的图像,则它将单元格textLabel
推到右侧,以容纳该图像。我想对表格视图单元执行类似的操作(除了将标签下推)。
我该怎么做?
最佳答案
一种简单的方法是继承UITableViewCell
并重写layoutSubviews
方法。
这里有个简单的例子。
@interface CustomCell : UITableViewCell
@end
@implementation CustomCell
- (void)layoutSubviews
{
[super layoutSubviews];
// grab bound for contentView
CGRect contentViewBound = self.contentView.bounds;
if(self.imageView.image) {
// do stuff here, for example put the image right...
CGRect imageViewFrame = self.imageView.frame;
// change x position
imageViewFrame.postion.x = contentViewBound.size.width - imageViewFrame.size.width;
// assign the new frame
self.imageView.frame = imageViewFrame;
}
else {
// do stuff here
}
}
特别是在此方法内部,您可以根据
image
定位单元的组件。希望能帮助到你。