2011-05-12 58 views
-2

我有和HERE一樣的問題..請幫助!旋轉UIImageView後滾動和縮放的問題

我有一個UIViewController是 支持滾動和 的UIImageView的縮放。它效果很好。

我試圖添加對方向變化 的支持。由於各種原因,I 需要通過旋轉UIImageView而不是UIImageController來執行此操作。

我有圖像旋轉的工作,但 如果捏縮放當圖像 旋轉的用戶,圖像的大小和 位置去瘋狂(例如, 跳轉到側面的圖像,獲取太小, 似乎不知道滾動視圖的範圍 在哪裏,等等)。

第h文件的核心內容:

@interface ImageViewController : UIViewController <UIScrollViewDelegate> 
{ 
    IBOutlet UIScrollView *scrollView; 
    IBOutlet UIImageView *imageView; 
} 

@property (nonatomic, assign) UIScrollView *scrollView; 
@property (nonatomic, assign) UIImageView *imageView; 

@end 

支持用於變焦:

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

支持滾動(組 圖像被加載之後) :

[scrollView setContentSize: CGSizeMake(imageView.bounds.size.width, imageView.bounds.size.height)]; 

支持時 方向改變旋轉圖像:

-(void)orientationChanged:(NSNotification *)note 
{ 
    UIDeviceOrientation orientation = [UIDevice currentDevice].orientation; 

    CGFloat angle = 0; 
    switch (orientation) 
    { 
     case UIDeviceOrientationLandscapeLeft: 
      angle = M_PI/2.0f; 
      break; 
     case UIDeviceOrientationLandscapeRight: 
      angle = -M_PI/2.0f; 
      break; 
     case UIDeviceOrientationPortraitUpsideDown: 
      angle = M_PI; 
      break; 
     default: 
      break; 
    } 

    self.imageView.transform = CGAffineTransformMakeRotation(angle); 
} 

我懷疑的問題是, 滾動視圖是困惑,因爲 尺寸圖象具有由於 的輪換而改變,但我對 無能爲力。有任何想法嗎? FWIW,如果我更改 方向,但在縮放之前將 更改爲「垂直」,則縮放功能不起作用。

+0

試着在這裏詳細說明以獲得答案。我編輯了您的原始帖子。從鏈接複製粘貼。 – 2011-05-12 13:31:00

回答

0

重繪您的圖像視圖,將其從srollView中刪除並再次閱讀。