// // TUIImageReplyQuoteView.m // TUIChat // // Created by harvy on 2021/11/25. // Copyright © 2023 Tencent. All rights reserved. // #import "TUIImageReplyQuoteView.h" #import "TUIImageReplyQuoteViewData.h" @implementation TUIImageReplyQuoteView - (instancetype)initWithFrame:(CGRect)frame { if (self = [super initWithFrame:frame]) { _imageView = [[UIImageView alloc] init]; _imageView.frame = CGRectMake(0, 0, 60, 60); [self addSubview:_imageView]; } return self; } - (void)fillWithData:(TUIReplyQuoteViewData *)data { [super fillWithData:data]; if (![data isKindOfClass:TUIImageReplyQuoteViewData.class]) { return; } TUIImageReplyQuoteViewData *myData = (TUIImageReplyQuoteViewData *)data; self.imageView.image = myData.image; if (myData.image == nil && myData.imageStatus != TUIImageReplyQuoteStatusDownloading) { [myData downloadImage]; } // tell constraints they need updating [self setNeedsUpdateConstraints]; // update constraints now so we can animate the change [self updateConstraintsIfNeeded]; [self layoutIfNeeded]; } + (BOOL)requiresConstraintBasedLayout { return YES; } // this is Apple's recommended place for adding/updating constraints - (void)updateConstraints { [super updateConstraints]; TUIImageReplyQuoteViewData *myData = (TUIImageReplyQuoteViewData *)self.data; [self.imageView mas_remakeConstraints:^(MASConstraintMaker *make) { make.leading.mas_equalTo(self); make.top.mas_equalTo(self); make.size.mas_equalTo(myData.imageSize); }]; } - (void)reset { [super reset]; self.imageView.image = nil; self.imageView.frame = CGRectMake(self.imageView.frame.origin.x, self.imageView.frame.origin.y, 60, 60); } @end