2012-05-09 50 views
2

我想創建工作酷似優盤滾動型/放大照片應用的圖像:可能通過可縮放和縱橫比內容實現UIScrollView?

-A景觀形象方面適合人像屏幕上,

- 可以放大圖像,

- 如果你旋轉縮放(橫向)的裝置,圖像仍然在中間,

-and當你放大,圖像仍然方面適合新景觀屏幕(streched全屏) 。

所以我需要方面適合,並立即放大功能。

我實現了一個解決方案,我在那裏佈局滾動視圖在layouSubviews內容「手動」有方面合適,但擾亂縮放行爲。

是否有一個整潔的UIKit方式來處理這個問題? 或者我必須在這裏創建我自己的實現?

+0

你有沒有得到答案,我想我有同樣的問題 –

回答

0

您需要啓用縮放(並設置最小和最大縮放比例),然後實現scrollViewDidZoom。以下是一些示例代碼,讓您開始處理圖像居中。你可以調整它做其他部分:

- (void)scrollViewDidZoom:(UIScrollView *)scrollView 
{ 
    CGSize boundsSize = scrollView.bounds.size; 
    CGRect frameToCenter = imageView.frame; 

    // center horizontally 
    if (frameToCenter.size.width < boundsSize.width) 
     frameToCenter.origin.x = (boundsSize.width - frameToCenter.size.width)/2; 
    else 
     frameToCenter.origin.x = 0; 

    // center vertically 
    if (frameToCenter.size.height < boundsSize.height) 
     frameToCenter.origin.y = (boundsSize.height - frameToCenter.size.height)/2; 
    else 
     frameToCenter.origin.y = 0; 

    imageView.frame = frameToCenter; 
} 

注:此代碼假定您保持您的UIScrollView(在這個例子中的ImageView)到UIImageView的一個參考。

+0

我不想讓圖像居中,我只想保持縮放的部分只居中。但重點是保持方面適合,這意味着當用戶轉動設備時內容的規模發生變化。只需看看照片應用程序。 – Geri

相關問題