分頁控件是一種用來取代導航欄的可見指示器,方便手勢直接翻頁,最典型的應用便是iPhone的主屏幕,當圖標過多會自動增加頁面,在屏幕底部你會看到原點,用來只是當前頁面,並且會隨著翻頁自動更新。
一、創建
- UIPageControl* myPageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(0.0, 400.0, 320.0, 0.0)];
二、設置屬性
1. 頁面數目
- myPageControl.numberOfPages =5;
默認第一頁會被選中。如果要選擇其他頁,可以設置currentPage 屬性。頁面索引從 0 開始:
- myPageControl.currentPage =3;// 當前頁數,第四頁
默認情況下,即使只有一個頁面,指示器也會顯示進來。如果要在僅有一個頁面的情況下隱藏指示器,可以將 hideForSinglePage 的值設為 YES。
- myPageControl.hidesForSinglePage=YES;
如果你希望直到有時間執行完你的操作之後,才更新當前指示器當前指示頁,可以將 defersCurrentPageDisPlay 設為YES。這樣的話你必須調用控件的 updateCurentPageDisPlay 來更新當前頁:
- myPageControl.defersCurrentPageDisplay = YES;
- [myPageControl updateCurrentPageDisplay];
三、顯示控件
- [self.view addSubview:myPageControl];
四、通知
當用戶點觸分頁控件時,會產生一個 UIControlEventVakueChanged 事件。你可以用UIControl 類的 addTarget 方法,為其指定一個動作:
- -(void)pageChanged:(id)sender{
- UIPageControl* control = (UIPageControl*)sender;
- NSInteger page = control.currentPage;
- //添加你要處理的代碼
- }
-
- [myPageControl addTarget:self action:@selector(pageChanged:) forControlEvents:UIControlEventValueChanged];
OK.講完了。簡單吧。遠遠不止這些,分頁控件往往伴隨著手勢操作,這個留待以後再講。