2010-07-26 137 views
2

在我看來,我有一張照片..圖片有3:2的比例,並且很大,分辨率也很明智。如何使用UIImageView調整圖片大小,以便放大和縮小?

我在初始化UIImage和原始大小的圖像時遇到了很多麻煩,然後縮小了UIImageView的大小,使整個圖像在scrollview中可見。

該程序只保留在縱向方向。

不,請不要說只使用UIWebView。 UIWebView不允許我在視圖加載期間設置內容大小......相反,它只是縮小圖像的任意比例,我無法找到調整比例值的方法(我不認爲它是可能)。

感謝您的回覆!我真的很感激他們:D

回答

10

下面是放置圖像的示例,該圖像響應捏合縮放。基本上,您將UIImageView放在UIScrollView中並更改一些設置。

UIImageView *myImage; 
UIScrollView *myScroll; 

-(void)viewDidLoad{ 

    myImage = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,360,450)]; 
    [myImage setImage:[UIImage imageNamed:@"coolpic.png"]]; 
    myImage.contentMode = UIViewContentModeScaleAspectFit; 
    [myScroll addSubview:myImage]; 
    [myScroll setContentSize:CGSizeMake(myImage.frame.size.width, myImage.frame.size.height)]; 
    [myScroll setMinimumZoomScale:1.0]; 
    [myScroll setMaximumZoomScale:4.0]; 
} 

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{ 
return myImage; 
} 

當然,請正確設置所有代表和IB鉤子。

編輯:我剛剛重讀你的問題。回答您的問題的示例部分是UIImageView的框架規範及其contentMode設置。

+0

我有很多滾動視圖跳轉的問題,以及如何無法放大特定區域 - 它必須是UIViewContentModeScaleAspectFit !!!! – Rambatino 2014-11-06 20:20:48

1

你幾乎肯定不想一次加載你的'巨大的,分辨率明智的'圖像,而不管它的規模。我建議檢查一下這個東西的蘋果的一些示例代碼(從ScrollViewSuite開始會很好,我會說)。

還有一個最近從WWDC發佈的視頻,他們實現了這樣的事情(他們有更多的照片查看應用程序,但你可以很容易地做他們只顯示一個圖像),所以看一看爲此。

1

轉到UIImageView的屬性選項卡。選擇「要填充的方面」或「適合的方面」。如果您使用「縱橫填充」,則可能無法顯示整個圖像。我只是使用「方面適合」,並使背景變黑。