[英]image doesn't fit in UIImageView
我是iOS開發的初學者,但遇到以下問題。
在.xib文件中,我具有按鈕和imageview,如下圖所示。
現在,我執行以下操作以在圖像視圖中顯示圖像並在.m文件中設置內容模式。
UIImage *save = UIGraphicsGetImageFromCurrentImageContext();
self.ivCard.image = save;
self.ivCard.contentMode = UIViewContentModeScaleAspectFit;
self.ivCard.clipsToBounds = YES;
現在,結果如下圖所示。
原始圖像的分辨率為2000x1000,在這里
圖像會自動從右側裁剪,應適合圖像視圖。
可以肯定的是,您沒有向ImageView添加約束,因為ImageView的大小與設備的大小不同。
將約束從ImageView添加到Interface Builder的邊框中,它將起作用。
檢查: https : //developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/WorkingwithConstraints/WorkingwithConstraints.html
有兩種方法可以實現它。
您可以從.xib文件中或從語法上如下所示去約束並向圖像視圖添加約束,如下所示:
//左右對齊ivCard
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[ivCard]-0-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(ivCard)]];
//從頂部和底部對齊ivCard
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-20-[ivCard]-0-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(ivCard)]];
您可以使用以下代碼直接為圖像視圖設置框架:
CGFloat btnHeight = 20; // Your back button height from xib self.ivCard.frame = CGRectMake(0, btnHeight, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height - btnHeight);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.