123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- //
- // RQCommonReusableView.m
- // YueXueChe
- //
- // Created by 张嵘 on 2018/12/19.
- // Copyright © 2018 lee. All rights reserved.
- //
- #import "RQCommonReusableView.h"
- #import "RQCommonGroupViewModel.h"
- @interface RQCommonReusableView ()
- /// viewModel
- @property (nonatomic, readwrite, strong) RQCommonGroupViewModel *viewModel;
- @property (nonatomic, readwrite, strong) UIView *line;
- @property (nonatomic, readwrite, strong) NSString *kind;
- @end
- @implementation RQCommonReusableView
- + (instancetype)reusableViewWithCollectionView:(UICollectionView *)collectionView OfKind:(NSString *)elementKind forIndexPath:(NSIndexPath *)indexPath {
- NSString *ID = [NSString stringWithFormat:@"%@%@", @"CommonReusableView",elementKind];
- [collectionView registerClass:[RQCommonReusableView class] forSupplementaryViewOfKind:elementKind withReuseIdentifier:ID];
- RQCommonReusableView *reusableView = [collectionView dequeueReusableSupplementaryViewOfKind:elementKind withReuseIdentifier:ID forIndexPath:indexPath];
- if (elementKind == UICollectionElementKindSectionHeader) {
- reusableView.backgroundColor = UIColor.whiteColor;
- }else {
- reusableView.backgroundColor = RQ_MAIN_BACKGROUNDCOLOR;
- }
- return reusableView;
- }
- - (void)bindViewModel:(RQCommonGroupViewModel *)viewModel {
- self.viewModel = viewModel;
- if (viewModel.header && viewModel.footer) {
- [self initHeaderView];
- [self initFooterView];
- }else if (viewModel.header || viewModel.footer) {
- if (viewModel.header && !viewModel.footer) {
- [self initHeaderView];
- self.footerContentLabel.hidden = YES;
- }else if (!viewModel.header && viewModel.footer) {
- [self initFooterView];
- self.headerContentLabel.hidden = YES;
- }
- }else {
- self.headerContentLabel.hidden = YES;
- self.footerContentLabel.hidden = YES;
- }
- }
- - (void)initHeaderView {
- [self addSubview:self.headerContentLabel];
- [_headerContentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
- make.centerY.mas_equalTo(self);
- make.left.mas_equalTo(self).mas_equalTo(11.f);
- make.right.mas_equalTo(self).mas_equalTo(-11.f);
- }];
- [self addSubview:self.line];
- [_line mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.right.bottom.mas_equalTo(self);
- make.height.mas_offset(1);
- }];
- _headerContentLabel.text = self.viewModel.header;
- }
- - (void)initFooterView {
- [self addSubview:self.footerContentLabel];
- [_footerContentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
- make.centerY.mas_equalTo(self);
- make.left.mas_equalTo(self).mas_equalTo(11.f);
- make.right.mas_equalTo(self).mas_equalTo(-11.f);
- }];
- [self addSubview:self.line];
- [_line mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.right.bottom.mas_equalTo(self);
- make.height.mas_offset(1);
- }];
- _footerContentLabel.text = self.viewModel.footer;
- }
- - (UILabel *)headerContentLabel {
- if (!_headerContentLabel) {
- _headerContentLabel = [[UILabel alloc] init];
- _headerContentLabel.textColor = RQColorFromHexString(@"#0B1B27");
- _headerContentLabel.font = RQRegularFont_12;
- _headerContentLabel.numberOfLines = 0;
- _headerContentLabel.textAlignment = NSTextAlignmentLeft;
- }
- return _headerContentLabel;
- }
- - (UILabel *)footerContentLabel {
- if (!_footerContentLabel) {
- _footerContentLabel = [[UILabel alloc] init];
- _footerContentLabel.textColor = RQColorFromHexString(@"#0B1B27");
- _footerContentLabel.font = RQRegularFont_12;
- _footerContentLabel.numberOfLines = 0;
- _footerContentLabel.textAlignment = NSTextAlignmentLeft;
- }
- return _footerContentLabel;
- }
- - (UIView *)line {
- if (!_line) {
- _line = [[UIView alloc] init];
- _line.backgroundColor = RQ_MAIN_BACKGROUNDCOLOR;
- }
- return _line;
- }
- @end
|