UIView に Imageview を追加し、プロパティ AspectToFit を設定しました。アプリの要件に従って、imageview にもう 1 つの画像を追加する必要があります。
float width;
float height;
float x;
float y;
CGSize imageViewSize = self.getImageView.bounds.size;// self.getImageView.frame.size;
CGSize imageSize = self.getImage.size;
CGFloat minFactor = imageViewSize.width / imageSize.width;
if (imageViewSize.height / imageSize.height < minFactor)
{
minFactor = imageViewSize.height / imageSize.height;
}
CGRect frame = self.getImageView.frame;
NSLog(@"view height..%@",NSStringFromCGRect (frame));
CGSize resultSize = CGSizeMake(minFactor * imageSize.width, minFactor * imageSize.height);
UIImage *newimage = [self imageWithImage:self.getImage scaledToSize:resultSize];
float mainwidth = imageViewSize.width;
float mainheight = imageViewSize.height;
float imagewidth = newimage.size.width;
float imageheight = newimage.size.height;
_widthdiff = mainwidth-imagewidth;
_heightdiff = mainheight-imageheight;
x = self.view.frame.size.width-width-0-_widthdiff/2;
y = self.view.frame.size.height-height-116-_heightdiff/2;
imageview = [[UIImageView alloc]
initWithFrame:CGRectMake(x, y, width, height)];
[imageview setContentMode:UIViewContentModeScaleAspectFit];
このコードは、iPhone (iPhone 6 Plus、iPhone 7 Plus) を除くすべてのデバイスで正常に機能しています。私が見ることができるように、デバイスのプラス サイズでのみ問題があります。
imageview と適切な画像の差または比率を計算する違いはありますか? ご意見をお聞かせください。