2015-08-13 97 views
0

我有一個UIImageView顯示UIImage的內容模式設置爲UIContentModeScaleAspectFit。 imageview和屏幕一樣寬。我想調整圖像視圖的大小而不改變圖像的位置和比例。所以,在調整大小之後,UIImage仍然實際上處於相同的位置,並且實際上與屏幕寬度一樣,但由於imageview調整大小而不完全可見。調整UIImageView的大小而不縮放UIImage

我嘗試使用UIContentModeLeft,同時從右側調整大小,修復UIImage的位置,但是當我使用UIContentModeScaleAspectFit時,圖像未處於完全分辨率。

我對此毫無頭緒。我可能需要使用CGImage或CIImage,但我不知道從哪裏開始。

回答

0

我設法解決我的問題。下面是我所做的:

  • 創建UIView我在其中添加UIImageView子視圖
  • 設置ImageView的內容模式UIContentModeScaleAspectFit
  • 定義的ImageView架使屏幕與[[UIScreen mainScreen] bounds]
  • setClipsToBounds = YESUIView

現在,當調整大小時,imageview不縮放,因爲它的fra我被定義爲和屏幕一樣大,setClipsToBounds:確保我看不到UIView框架之外的部分圖像。

1

將您想要顯示的圖像設置爲視圖的背景,而不是源圖像。

您可以使用:

yourImageView.background = [UIColor colorWithPatternImage:[UIImage imageNamed:@"nameOfTheImageYouWantToDisplay"]];

+0

它沒有按預期工作。將圖像設置爲bactkground時,圖像比屏幕大得多,我只能看到一小部分。這就是爲什麼我最初想要使用UIContentModeScaleAspectFit。否則,我需要使用更低的圖像分辨率,例如iPhone 6上的375像素寬度以適應屏幕......但這是一個好主意,一會兒我以爲它會解決我的問題。 – Boris88

相關問題