2012-08-03 63 views
3

我在過去幾天開始在目標C中工作,並且我非常努力地理解uiscrollview。我想讓視圖圍繞大於屏幕尺寸的圖像移動,並且每次點擊屏幕時都可能會放大/縮小。爲了嘗試一些早期測試,我在下面寫了一個簡單的代碼序列。代碼評論爲(2)的作品,我看到構建和運行後的簡短動畫,但(1)沒有。圖像就在那裏,不會移動。我可以看到讓滾動工作在所有使用zoomToRect這是一個問題,因爲我想放大到圖像的一個較小的部分,而不是隻是在相同的縮放級別移動。目標C中的UIScrollView中的zoomToRect方法不起作用

我敢肯定我誤解了一些關於它是如何工作的基礎知識。有人能告訴我我哪裏出錯了嗎(我還沒有將這些編碼編入類/方法) - 只是想了解zoomToRect的實際工作方式,因爲我認爲這是我需要的。

UIImage *myFirstImage = [UIImage imageNamed:@"page.jpg"]; 

UIScrollView * myFirstScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 360, 480)]; 

[myFirstScrollView setContentSize:CGSizeMake(myFirstImage.size.width, myFirstImage.size.height)]; 

UIImageView *myFirstImageView = [[UIImageView alloc] initWithImage:myFirstImage]; 

[myFirstImageView setFrame:CGRectMake(0, 0, myFirstImage.size.width, myFirstImage.size.height)]; 

[myFirstScrollView addSubview:myFirstImageView]; 

[self.view addSubview:myFirstScrollView]; 

// 1 

[myFirstScrollView zoomToRect:CGRectMake(300, 300, 360, 480) 
    animated:YES]; // THIS DOESN'T WORK 

// 2 

[myFirstScrollView scrollRectToVisible:CGRectMake(300, 300, 360, 480) 
    animated:YES]; // THIS DOES WORK 

回答

0

這裏有一個答案可能有助於您

content size of UIScrollView

滾動視圖contentSize是一樣的圖像尺寸。所以在零縮放比例下,它不會滾動。

檢查SO鏈接,這將幫助你。