102 lines
2.8 KiB
Objective-C
102 lines
2.8 KiB
Objective-C
//
|
|
// YMMineUserInfoAlbumCollectionViewCell.m
|
|
// YUMI
|
|
//
|
|
// Created by YUMI on 2021/9/24.
|
|
//
|
|
|
|
#import "XPMineUserInfoAlbumCollectionViewCell.h"
|
|
///Third
|
|
#import <Masonry/Masonry.h>
|
|
///Tool
|
|
#import "UIButton+EnlargeTouchArea.h"
|
|
///Model
|
|
#import "UserPhoto.h"
|
|
|
|
#import "NetImageView.h"
|
|
|
|
@interface XPMineUserInfoAlbumCollectionViewCell ()
|
|
///
|
|
@property (nonatomic,strong) NetImageView *logoImageView;
|
|
///
|
|
@property (nonatomic,strong) UIButton *deleteButton;
|
|
@end
|
|
|
|
@implementation XPMineUserInfoAlbumCollectionViewCell
|
|
|
|
- (instancetype)initWithFrame:(CGRect)frame {
|
|
self = [super initWithFrame:frame];
|
|
if (self) {
|
|
[self initSubViews];
|
|
[self initSubViewConstraints];
|
|
}
|
|
return self;
|
|
}
|
|
#pragma mark - Response
|
|
- (void)deleteButtonAction:(UIButton *)sender {
|
|
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMineUserInfoAlbumCollectionViewCell:didDeleteItem:)]) {
|
|
[self.delegate xPMineUserInfoAlbumCollectionViewCell:self didDeleteItem:self.photo];
|
|
}
|
|
}
|
|
#pragma mark - Private Method
|
|
- (void)initSubViews {
|
|
[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(25, 25));
|
|
make.top.trailing.mas_equalTo(self.contentView).inset(0);
|
|
}];
|
|
}
|
|
|
|
#pragma mark - Getters And Setters
|
|
- (void)setPhoto:(UserPhoto *)photo {
|
|
_photo = photo;
|
|
if (_photo) {
|
|
self.logoImageView.imageUrl = photo.photoUrl;
|
|
}
|
|
}
|
|
|
|
- (void)setIsEdit:(BOOL)isEdit {
|
|
_isEdit = isEdit;
|
|
self.deleteButton.hidden = !_isEdit;
|
|
}
|
|
|
|
- (void)setAddImageName:(NSString *)addImageName {
|
|
_addImageName = addImageName;
|
|
if (_addImageName.length > 0) {
|
|
self.logoImageView.image = [UIImage imageNamed:_addImageName];
|
|
}
|
|
}
|
|
|
|
- (NetImageView *)logoImageView {
|
|
if (!_logoImageView) {
|
|
NetImageConfig * config = [[NetImageConfig alloc]init];
|
|
config.imageType = ImageTypeUserIcon;
|
|
_logoImageView = [[NetImageView alloc] initWithConfig:config];
|
|
_logoImageView.userInteractionEnabled = YES;
|
|
_logoImageView.layer.cornerRadius = 5;
|
|
_logoImageView.layer.masksToBounds = YES;
|
|
_logoImageView.contentMode = UIViewContentModeScaleAspectFill;
|
|
}
|
|
return _logoImageView;
|
|
}
|
|
|
|
- (UIButton *)deleteButton {
|
|
if (!_deleteButton) {
|
|
_deleteButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
|
[_deleteButton setImage:[UIImage imageNamed:@"mine_user_info_edit_photo_delete"] forState:UIControlStateNormal];
|
|
[_deleteButton setImage:[UIImage imageNamed:@"mine_user_info_edit_photo_delete"] forState:UIControlStateSelected];
|
|
[_deleteButton addTarget:self action:@selector(deleteButtonAction:) forControlEvents:UIControlEventTouchUpInside];
|
|
}
|
|
return _deleteButton;
|
|
}
|
|
|
|
@end
|