4

我有一个 iCarousel 画廊,我在其中从 Web 服务获取图像。画廊完美展示。我使用 iCarasouel 委托方法“didSelectItemAtIndex”来选择第一个到最后一个图像。我的 icarousel 类型是“carousel.type = iCarouselTypeCoverFlow;”。

我选择了图像并获得了正确的图像索引,didSelectItemAtIndex 仅在我滚动画廊并且图像从中心移动时才能正常工作,但是当加载视图时,didSelectItemAtIndex 未选择中心显示的“第一个或任何图像”。当我再次滚动图库并且中心图像从中心移动时,它的工作正常,然后我可以选择图像并转到下一个类或视图。

我想选择显示在 Icaraosel 中心的图像。不知道该怎么做?

专家的任何提示都将非常受欢迎。

4

3 回答 3

3

您可以在下面给出的委托方法中获取图像的当前索引

- (void)carouselCurrentItemIndexUpdated:(iCarousel *)carousel1

一旦您的图像完全加载,然后调用

[self carouselCurrentItemIndexUpdated:carousel];

这是代码:

在你的 viewDidLoad 中调用如下所示的方法,这里的 carousel 是在 iCarsouel 的一个实例中。

- (void)viewDidLoad
{
   [super viewDidLoad];
   [self carouselCurrentItemIndexUpdated:carousel];
}


  - (void)carouselCurrentItemIndexUpdated:(iCarousel *)carousel1
{
   self.currentItem=carousel1.currentItemIndex;
   NSLog(@"currentItem update== %i",self.currentItem);
}

希望这可以帮助....

于 2013-01-04T07:38:45.777 回答
1

我不知道我是否理解正确:您想didSelectItemAtIndex:在视图初始重新加载后立即收到一条消息并且不滚动?

只需询问currentItemIndex,如果您希望被选为中心,请始终致电centerItemWhenSelected

所以只需手动调用 [self didSelectItemAtIndex:carousel.currentItemIndex];`

于 2013-01-04T07:18:08.617 回答
1
-(void)carousel:(iCarousel *)carousel didSelectItemAtIndex:(NSInteger)index
{
    if (index == carousel.currentItemIndex)
    {
        ///Selected centered item only
    }

}
于 2014-04-10T12:22:16.143 回答