1
私はUIViewにImageviewを追加し、プロパティAspectToFitを設定しました。アプリケーションの要件によると、私はイメージビューにもう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プラス、iPone 7プラス)を除き、すべてのデバイスに正常に動作しています。私が見ることができるように、プラスサイズのデバイスでのみ問題があります。
イメージビューと適切なイメージの差や比率を計算する方法はありますか? アドバイスをお願いします。
私たちは、古いイメージのサイズを計算することによって、新しいイメージを追加し、要件ごとにUIViewのに追加することができ
あなたが直面している正確な問題は明確ではありません。 – Shubhank
@ Shubhank私は自分の質問を編集し、2つの画像を添付しました.1つはiPhone 5s用で、他はiPhone 6s Plus用です。あなたが見ることができる、qrcodeの画像の位置はuiimageviewがアスペクトフィッティング後にuiimageviewで開始するように正確ですが、iPhone 6s Plusではqrcodeの位置が正しくありません。 –
'width'と' height'の値はどこに割り当てられていますか? – Shubhank