我有一个自定义的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定位单元的组件。

希望能帮助到你。

08-27 22:42