我在我的 iPad 应用程序中使用 iCarousel,我想知道是否有办法在选择时动态更改中心项目的视图。简而言之,我想实现这样的目标, 我设法将第一个索引(项目 - 0)设置为红色,但我想不出一种方法来执行以下操作:
When 1 is selected i wish to change the image of 0 to plain white and 1 to red.
2 的东西也是如此。
任何帮助或建议将不胜感激。
谢谢
如果要选择项目然后更改颜色,则只需使用:
- (void)carousel:(iCarousel *)carousel didSelectItemAtIndex:(NSInteger)index{
//change the view of current index
}
如果您希望当前项目颜色为红色而不选择,那么您需要做更多的事情:
- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view{
//Here you need to check current index
if (index == self.carousel.currentItemIndex) {
//change the view
}
}
而且您还需要使用此方法检查索引是否更改:
- (void)carouselCurrentItemIndexDidChange:(iCarousel *)carousel{
//you need to reload carousel for update view of current index
[self.carousel reloadData];
}
iCarousel 有一个委托方法
- (void)carousel:(iCarousel *)carousel didSelectItemAtIndex:(NSInteger)index
每当您选择一个项目时都会调用它,并且index会为您提供当前所选项目的索引。您可以使用此索引更改视图的颜色。您还可以将先前视图的索引保存在任何整数变量中,并使用它来重置该图块的颜色。