0

如何确定轮播的索引?还是加载了数组的索引?我已经从 NSDocumentDirectory 加载了我的图像。

self.myImages = [NSMutableArray new];  
for(int i = 1; i <= 30; i++) 
{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDir = [paths objectAtIndex:0];

    NSString *savedImagePath = [documentsDir stringByAppendingPathComponent:[NSString stringWithFormat:@"myImages%d.png", i]]; 
       if([[NSFileManager defaultManager] fileExistsAtPath:savedImagePath]){ 
            [images addObject:[UIImage imageWithContentsOfFile:savedImagePath]]; 
            NSLog(@"file exists");
        } 

} 

并将它们添加到 iCarousel 视图中:

- (UIView *)carousel:(iCarousel *)_carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view
{
    view = [[UIImageView alloc] initWithImage:[myImages objectAtIndex:index]];
    return view;
}
4

2 回答 2

1

如果我没有误解您的问题,您可以尝试使用tagUIView 的属性进行比较。例如:

viewForItemAtIndex:

- (UIView *)carousel:(iCarousel *)_carousel viewForItemAtIndex:(NSUInteger)index  reusingView:(UIView *)view
{
    view = [[UIImageView alloc] initWithImage:[myImages objectAtIndex:index]];
    view.tag = index;
    return view;
}

currentItemView与另一张图片比较

If (int == [(UIImageView*)[self.carousel currentItemView] tag]) { 
    //do something
}
于 2012-06-05T07:30:22.303 回答
0

您在哪里(在代码中)需要轮播索引?当您将图像添加到轮播时(在 中viewForItemAtIndex:)以及当您点击轮播时(在 中),您就会知道这一点didSelectItemAtIndex:

此外,您可以使用轮播的currentItemIndex属性。

于 2012-06-05T06:23:36.200 回答