UIScrollView類為顯示內容的視圖大小大於應用程式視窗提供支援。它使使用者能夠在該內容中通過輕 掃手勢進行滾動,通過手捏手勢放大和縮小視圖中的內容。
分頁
當取景範圍裡有多個視 圖時,你不希望拖動後介面停在中間串連位置,就需要分頁功能
CGRect screenRect = [self.window bounds]; CGRect bigRect = screenRect; bigRect.size.width *= 2.0; //初始化ScrollView UIScrollView *scrollView = [UIScrollView alloc] initWithFrame:screenRect]; [self.window addSubview:scrollView]; //建立一個自訂視圖對象,並加入到ScrollView中 MyView *view = [MyView alloc] initWithFrame:screenRect]; [scrollView addSubview:view]; //建立另一個對象,使其正好在螢幕外,在上一個視圖的右側 screenRect.origin.x = screenRect.size.width; MyView *anotherView = [MyView alloc] initWithFrame:screenRect]; [scrollView addSubview:anotherView];
完成基本設定,在UIScrollView中有兩個屬性, contentSize和pagingEnabled,前者決定了UIScrollView的取景範圍,後者是設定是否系統自動分頁
[scrollView setContentSize:bigRect.size]; [scrollView setPagingEnabled:YES];
縮放
假設你這個應用裡有個視圖成員,你想實 現他的放大縮小功能
CGRect screenRect = [self.window bounds]; //初始化ScrollView,並設定它的縮放規模,實現委託 UIScrollView *scrollView = [UIScrollView alloc] initWithFrame:screenRect]; [scrollView setMinimumZoomScale:1.0]; [scrollView setMaximumZoomScale:5.0]; [scrollView setDelegate:self]; [self.window addSubview:scrollView]; //初始化成員 myView = [MyView alloc] initWithFrame:screenRect];
要讓該滾動視圖實現縮放功能,就需 要遵守UIScrollViewDelegate協議,然後實現委託方法
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return myView; }
查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/