對於右端,請嘗試減小滾動視圖的屬性的寬度,以使滾動視圖在到達最後一頁之前停止分頁。 對於左端,將每頁的frame.origin.x
屬性減少相同的數量。前幾頁在滾動視圖中會有一個負x位置。
本質上,使滾動視圖認爲它的內容只是第2頁到第2頁。
例如:
// scrollView has been initialized and added to the view hierarchy according to the link in @richard's answer:
// http://blog.proculo.de/archives/180-Paging-enabled-UIScrollView-With-Previews.html
CGFloat pageNum=10;
CGFloat pageWidth=scrollView.frame.size.width;
CGFloat pageHeight=scrollView.frame.size.height;
CGFloat visibleWidth=320;
// Set scrollView contentSize and create pages:
CGFloat leftShift=floor(((visibleWidth-pageWidth)/2)/pageWidth)*pageWidth;
CGFloat contentSizeReduction=2*leftShift;
scrollView.contentSize = CGSizeMake(pageNum*pageWidth-contentSizeReduction,pageHeight);
for(int i=0; i<pageNum; i++) {
CGRect pageFrame = CGRectMake(i*pageWidth-leftShift, 0, pageWidth, pageHeight);
UIView *pageView = [[[UIView alloc] initWithFrame:pageFrame] autorelease];
// Initialize the page view for the current index here
[scrollView addSubview:pageView];
}
原諒代碼中的任何拼寫錯誤。我自己還沒有嘗試過。
讓我知道它是否有效。
當用戶在您的頁面上滑動時,是否想要滑動一個較小的值,然後scrollView的寬度?首先顯示第1,2,3頁,然後刷2,3,4?或者4,5,6會在刷卡後顯示? – tonklon 2010-07-31 08:36:45
我希望它像一個正常的滾動視圖一樣行動,滾動應該是手指移動的1:1,但是當手指被移除時它會鎖定在頁面上。 – Seventoes 2010-08-04 21:37:31