64 lines
1.7 KiB
Objective-C
64 lines
1.7 KiB
Objective-C
//
|
|
// MSRoomOnLineAvatarView.m
|
|
// YuMi
|
|
//
|
|
// Created by duoban on 2024/5/20.
|
|
//
|
|
|
|
#import "MSRoomOnLineAvatarView.h"
|
|
@interface MSRoomOnLineAvatarView()
|
|
@property(nonatomic,strong) NetImageView *avatarView;
|
|
@property(nonatomic,strong) UIImageView *borderView;
|
|
@end
|
|
@implementation MSRoomOnLineAvatarView
|
|
|
|
-(instancetype)initWithFrame:(CGRect)frame{
|
|
self = [super initWithFrame:frame];
|
|
if(self){
|
|
[self installUI];
|
|
[self installConstraints];
|
|
}
|
|
return self;
|
|
}
|
|
-(void)installUI{
|
|
[self addSubview:self.avatarView];
|
|
[self addSubview:self.borderView];
|
|
}
|
|
- (void)setIsHiddenSubView:(BOOL)isHiddenSubView{
|
|
_isHiddenSubView = isHiddenSubView;
|
|
_borderView.hidden = _isHiddenSubView;
|
|
_avatarView.hidden = _isHiddenSubView;
|
|
}
|
|
-(void)installConstraints{
|
|
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.edges.equalTo(self);
|
|
}];
|
|
[self.borderView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.edges.equalTo(self);
|
|
}];
|
|
}
|
|
- (void)setModel:(XPMessageRemoteExtModel *)model{
|
|
_model = model;
|
|
_avatarView.imageUrl = _model.avatar;
|
|
}
|
|
#pragma mark - 懒加载
|
|
- (NetImageView *)avatarView{
|
|
if(!_avatarView){
|
|
NetImageConfig *config = [NetImageConfig new];
|
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
|
NetImageView *imageView = [[NetImageView alloc]initWithConfig:config];
|
|
imageView.layer.cornerRadius = 12;
|
|
imageView.layer.masksToBounds = YES;
|
|
_avatarView = imageView;
|
|
}
|
|
return _avatarView;
|
|
}
|
|
- (UIImageView *)borderView{
|
|
if(!_borderView){
|
|
_borderView = [UIImageView new];
|
|
_borderView.image = kImage(@"ms_room_online_border");
|
|
}
|
|
return _borderView;
|
|
}
|
|
@end
|