2011-02-17 62 views
6

由於ScrollView ZoomScale減少或增加ScrollView contentOffset.X & contentOffset.Y的最大值,分別減少或增加。 我們能否以編程方式推斷ZoomScale & maximum contentOffset.x之間的關係? 如果是這樣,請給出相同的邏輯。ScrollView ContentOffset&ZoomScale

回答

8

考慮你有一個UIScrollView 「A」 尺寸(100,100)的像素

和一個UIView 「B」(與最終子視圖),這是它的內容,大小(200,200)

時A.ZoomScale是1 您只能看到B(rect大小爲100,100) 的一部分,您可以在A中滾動B以更改可查看部分,這樣做可以更改此可查看矩形的「原點」,在「 B「,並且這個」原點「可以是(0,0)和(100,100)之間的一個點。 如果您的contentOffset.x,contentOffset.y是100,100您正在查看B的右側/底部季度/部分。 您無法滾動到(101,100)'couse沒有更多可見的右側一部分。

現在可以放大,與A.ZoomScale = 2

,這意味着,雖然A仍然尺寸(100,100),所述(B)含量是現在(400,400),所以現在( - content.size - 400-300 < A.size)origin.x可以從0到300去

PS

你可以得到:

A.contentSize(它是「縮小規模B「並且它根據zoomScale而變化,當zoomScale = 1時它等於B.frame)

A.zoomScale

A.frame

+0

感謝解釋contentSize和contentOffset的概念。這個概念反過來幫助我解決我的問題,即讓我的邏輯正確。 – 2011-02-17 12:41:54

相關問題