我在icarousel中有一些图像。 (约20张图片)
我想要一页中的5张图片。
图像像素或图像位置没有问题。
如何在没有ScrollView的情况下使用uipagecontrol?
ex)能够使用一些委托方法..等等。
carousel.type = iCarouselTypeLinear;
carousel = [[iCarousel alloc] initWithFrame:CGRectMake(0, 504, 1024, 164)];
carousel.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"10004.png"]];
carousel.delegate = self;
carousel.dataSource = self;
[self.view addSubview:carousel];
[carousel reloadData];
[carousel release];
UIView *bandImageView = [[UIView alloc] initWithFrame:CGRectMake(0, 668, 1024, 20)];
bandImageView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"10001.png"]];
[self.view addSubview:bandImageView]; // page dots in
UIPageControl *pageControl = [[UIPageControl alloc] init];
pageControl.frame = CGRectMake(434, 0, 150, 20);
pageControl.numberOfPages = 6;
pageControl.currentPage = 0;
[bandImageView addSubview:pageControl];
[pageControl release];
答案 0 :(得分:11)
在iCarousel carouselCurrentItemIndexUpdated:
委托方法中,设置
pageControl.currentPage = carousel.currentItemIndex / 5
然后将pageControl操作绑定到类似下面的方法:
- (IBAction)updatePage:(UIPageControl *)pageControl
{
[carousel scrollToItemAtIndex:pageControl.currentPage * 5 aimated:YES];
}
如果您没有使用nib文件,可以使用
绑定操作[pageControl addTarget:self action:@selector(updatePage:) forControlEvents:UIControlEventValueChanged];
最好设置pageControl.defersCurrentPageDisplay = YES;
以避免闪烁。