Как установить динамическую высоту UIImageView, а также высоту UITableViewCell в соответствии с высотой UIImageView? - PullRequest
0 голосов
/ 28 марта 2019

Хотите установить размер UIImageView динамически в соответствии с размером изображения, а также хотите установить высоту UITableViewCell в соответствии с вышеупомянутой высотой UIImageView, которая находится в UITableViewCell с использованием AutoLayout в Objective c.

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

return UITableViewAutomaticDimension;
}

А мой код в методе cellForRowAtIndexPath приведен ниже:

[cellRecImg.imgMessage sd_setImageWithURL:[NSURL URLWithString:[dictMessage objectForKey:@"msg_attachment"]] placeholderImage:[UIImage imageNamed:@"Image-33"]];
CGFloat imageHeight = cellRecImg.imgMessage.image.size.height;
CGFloat imageWidth = cellRecImg.imgMessage.image.size.width;
float ratio = cellRecImg.imgMessage.frame.size.width / cellRecImg.imgMessage.frame.size.height;
float newHeight = imageHeight / ratio;
float newWidth = imageWidth / ratio;
cellRecImg.constImageHeight.constant = newHeight;
cellRecImg.constImageWidth.constant = newWidth;
[self.view layoutIfNeeded];

Это xib-дизайн моего UITableViewCell, где вы можете видеть постоянную представления. Это мой UIImageView, здесь вы можете увидеть константы UIImageView. Этот результат я получил от симулятора.

В этом результирующем изображении вы можете видеть, что UIImageView создает множество дополнительных пробелов от UIImage до края UIImageView. На самом деле я не хочу этот разрыв, а также хочу установить динамическую высоту UITableViewRow в соответствии с высотой UIImageView.

Пожалуйста, ответьте на языке Objective c

...