滾動視圖和頁面控制

先看看效果


說起來這個,確實應該反省,不怎麼難的東西卻整了半天

好了,進入正題

先定義一個滾動視圖

 MyScrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 20, 320, 370)];

以及可以滾動的大小,是否顯示滾動條

MyScrollView.contentSize = CGSizeMake(1600, 180);

    MyScrollView.scrollEnabled = YES;

    MyScrollView.bounces = NO;

這一句非常重要,沒有這一句就不能響應滾動視圖的任何操作

    MyScrollView.delegate = self;

是否可以整夜翻動

    MyScrollView.pagingEnabled = YES;

開始,沒有加MyScrollView.delegate = self,他無論如何也不會響應我的操作

但是可以翻頁,只是小圓點不隨着我的翻頁而滾動,然後翻起來是滾了一長段的那種

太挫了

自定義一個UIPageControl

 pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(100, 400, 100, 50)];

    //頁面個數

    pageControl.numberOfPages = 5;

    // 指定 pageControl的值

    pageControl.currentPage = 0;

    pageControl.currentPageIndicatorTintColor = [UIColor brownColor];

    pageControl.pageIndicatorTintColor = [UIColor grayColor];

    [pageControl addTarget:self action:@selector(TapPageControl:) forControlEvents:UIControlEventValueChanged];

    [self.view addSubview:pageControl];



//響應頁面選擇器

- (void)TapPageControl:(id)sender

{

    //    獲取當前pagecontroll的值

    int page =(int) pageControl.currentPage;

    //    根據pagecontroll的值來改變scrollview的滾動位置,以此切換到指定的頁面

    [MyScrollView setContentOffset:CGPointMake(320 *page,-60)];

}

//當視圖滾動時觸發

- (void)scrollViewDidScroll:(UIScrollView *)sender

{

    //   根據滾動的偏移量判斷當前頁面的小白點

    int page = MyScrollView.contentOffset.x / 320;

    //    當前值給page

    pageControl.currentPage = page;

    

}





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章