自定义Cell的流程

1、.h文件

//
// 文 件 名:CHBackupGateWayCell.h
//
// 版权所有:Copyright © 2018 lelight. All rights reserved.
// 创 建 者:lelight
// 创建日期:2018/12/19.
// 文档说明:
// 修 改 人:
// 修改日期:
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@class CHBackupItemElement;
@interface CHBackupGateWayCell : UITableViewCell

/** 数据模型 */
@property (nonatomic, strong) CHBackupItemElement *backupItem;

@end

NS_ASSUME_NONNULL_END

2、.m文件

//
// 文 件 名:CHBackupGateWayCell.m
//
// 版权所有:Copyright © 2018 lelight. All rights reserved.
// 创 建 者:lelight
// 创建日期:2018/12/19.
// 文档说明:
// 修 改 人:
// 修改日期:
//

#import "CHBackupGateWayCell.h"
#import "CHBackupItem.h"  /** 数据模型 */

/************ 界面布局Masonry *****************************/
//define this constant if you want to use Masonry without the 'mas_' prefix
#define MAS_SHORTHAND
//define this constant if you want to enable auto-boxing for default syntax
#define MAS_SHORTHAND_GLOBALS
#import "Masonry.h"

/** 颜色生成 */
#define CHColor(r,g,b,a) [UIColor colorWithRed:r/255.f green:g/255.f blue:b/255.f alpha:a]

@interface CHBackupGateWayCell ()

/** 备份网关的名字 */
@property (nonatomic, strong) UILabel *gateWayNameL;

@end

@implementation CHBackupGateWayCell

// 在这里调整自己的属性,添加子控件等
- (instancetype)initWithStyle:(UITableViewCellStyle)style
              reuseIdentifier:(NSString *)reuseIdentifier {
    if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
        
        UILabel *gateWayNameL = [[UILabel alloc] init];
        [self addSubview:gateWayNameL];
        self.gateWayNameL = gateWayNameL;
        
    }
    return self;
}

/************ 设置数据 *****************************/
- (void)setBackupItem:(CHBackupItemElement *)backupItem {
    _backupItem = backupItem;
    
    self.gateWayNameL.text = backupItem.name;

}

/************ 设置所有的子控件的frame *****************************/
- (void)layoutSubviews {
    
    [self.gateWayNameL makeConstraints:^(MASConstraintMaker *make) {
        make.right.equalTo(self).offset(-10);
        make.centerY.equalTo(self);
        make.width.height.equalTo(50);
    }];
}

@end
原文地址:https://www.cnblogs.com/CH520/p/10145239.html