4

私はプロジェクトを行っており、ここにある GMGridView の使用を検討しています: https://github.com/gmoledina/GMGridView

誰かがそれを使用して UIPageControl を追加しましたか? もしそうなら、どうすればそれを行うことができますか?

助けてくれてありがとう。

4

1 に答える 1

4

次の変更を行う必要があります:-

  1.)In Demo1ViewController.h  do
    @interface Demo1ViewController : UIViewController
    {
        UIPageControl *pageCont;
    }
    @end

2.)In Demo1ViewController.m  do

In load view method write:-

      pageCont=[[UIPageControl alloc]init];
        pageCont.numberOfPages=10// set this according to your total pages
        pageCont.backgroundColor=[UIColor blueColor];
        [pageCont addTarget:self action:@selector(pagechanged:) forControlEvents:UIControlEventValueChanged];
        pageCont.frame=CGRectMake(0, 0, 320, 30);// set frame as your requirements
        [self.view addSubview:pageCont]; 
        _gmGridView.delegate=self;

    and add these two methods

    -(IBAction)pagechanged:(id)sender
    {
// add code according  to your requirements if needed

    }

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView {
        CGFloat pageWidth = _gmGridView.frame.size.width; 
        float fractionalPage = _gmGridView.contentOffset.x / pageWidth;
        NSInteger page = lround(fractionalPage);
        pageCont.currentPage = page; 
    }

これは、gmgridビューの水平レイアウトで機能します。必要に応じて、垂直スクロールのdidscrollメソッドのロジックを変更できます。それはあなたを助けるかもしれません。ハッピーコーディング!

于 2012-10-26T10:11:52.417 に答える