Files
yinmeng-ios/xplan-ios/Main/Monents/View/Cell/XPMonentsPublishCollectionViewCell.m

93 lines
2.5 KiB
Mathematica
Raw Normal View History

2022-07-01 18:48:58 +08:00
//
// XPMonentsPublishCollectionViewCell.m
// xplan-ios
//
// Created by on 2022/7/1.
//
#import "XPMonentsPublishCollectionViewCell.h"
///Third
#import <Masonry/Masonry.h>
@interface XPMonentsPublishCollectionViewCell ()
///
@property (nonatomic,strong) UIImageView *logoImageView;
///
@property (nonatomic,strong) UIButton *deleteButton;
@end
@implementation XPMonentsPublishCollectionViewCell
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];
[self.contentView addSubview:self.logoImageView];
[self.contentView addSubview:self.deleteButton];
}
- (void)initSubViewConstraints {
[self.logoImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.contentView);
}];
[self.deleteButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(20, 20));
make.right.top.mas_equalTo(self.contentView);
}];
}
#pragma mark - Event Response
- (void)deleteButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMonentsPublishCollectionViewCell:didDeleteItem:)]) {
[self.delegate XPMonentsPublishCollectionViewCell:self didDeleteItem:self.image];
}
}
#pragma mark - Getters And Setters
- (void)setImage:(UIImage *)image {
_image = image;
if (_image) {
self.logoImageView.image = _image;
}
}
- (void)setIsShowDelete:(BOOL)isShowDelete {
_isShowDelete = isShowDelete;
self.deleteButton.hidden = !_isShowDelete;
}
- (UIImageView *)logoImageView {
if (!_logoImageView) {
_logoImageView = [[UIImageView alloc] init];
_logoImageView.userInteractionEnabled = YES;
_logoImageView.layer.masksToBounds = YES;
_logoImageView.layer.cornerRadius = 10;
_logoImageView.contentMode = UIViewContentModeScaleAspectFill;
_logoImageView.layer.masksToBounds = YES;
}
return _logoImageView;
}
- (UIButton *)deleteButton {
if (!_deleteButton) {
_deleteButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_deleteButton setImage:[UIImage imageNamed:@"monents_publish_album_delete"] forState:UIControlStateNormal];
[_deleteButton setImage:[UIImage imageNamed:@"monents_publish_album_delete"] forState:UIControlStateSelected];
[_deleteButton addTarget:self action:@selector(deleteButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _deleteButton;
}
@end