cell中两行文字及图片位置随意布局的简单实现

在iOS的开发中,UITableView是最常用的一种控件,而对于cell展示的各种布局更是多样化!为了实现多样化的布局展示,我们基本都要做一个继承于UITableViewCell的自定义cell。

今天想分享的是对于一些简单的cell的布局--最常见的文字在左,图片在右。

系统cell自带的有3个属性--textLabel,detailTextLabel,imageView;而我们通过简单的更改这三个控件的frame即可实现上面的文字在左,图片在右的UI展示需求。如图:cell中两行文字及图片位置随意布局的简单实现_第1张图片

大家有一定的开发经验后,应该都用过layoutSubviews这个方法,在此方法内可以对所属的各个控件的frame进行随意的更改。而这个效果的实现,就是通过这个方法。

- (void)layoutSubviews {
    [super layoutSubviews];
    CGRect tmpFrame = self.textLabel.frame;
    tmpFrame.origin.x = 15;
    self.textLabel.frame = tmpFrame;
    
    tmpFrame = self.detailTextLabel.frame;
    tmpFrame.origin.x = 15;
    self.detailTextLabel.frame = tmpFrame;

    self.imageView.frame = CGRectMake(self.width-40, (self.height-20)/2, 20, 20);   

有上面的代码后,相信大家都已经看懂了。就是简单的一个中间变量的替换。像很多第三方库,和我们自己经常写的使用的View的X,Y,bottom等属性的直接使用一样。

好了,今天就跟大家分享到这里了。希望能帮到大家。让大家的code更简单,更快捷,更有趣。

你可能感兴趣的:(技术分享)