UIScrollView objectAtIndex

时间:2012-05-17 03:38:10

标签: iphone ios xcode uiscrollview

在我的UIScrollView中,我的数组中有30张图片。我尝试在我的数组中获取objectAtIndex。 我想能够做的是当UIScrollView停止滚动时在特定图像中显示动画。 所以我在下面尝试了这段代码:

- (void) scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
    if([images objectAtIndex:0]){

        //Animation 1

    } else if([images objectAtIndex:1]){

        //Animation 2

    } else if{
...

}

但我不能让它做我的动画。我的病情可能还是有其他方式?

2 个答案:

答案 0 :(得分:2)

您的代码:

if([images objectAtIndex:0]) 

将评估存储在索引位置0的数组图像中的对象是否为零。并且大概如果数组在边界内,那么它将返回true。如果数组超出范围,则该语句将导致崩溃。所以你的if语句的结果很可能是真的或崩溃(除非你出于某种原因在数组中存储nil指针)。

你想要评估什么?您是否尝试确定滚动视图停止滚动时显示的图像?

答案 1 :(得分:0)

我将NSNumberNSString应用于我的数组。像这样:

for (int i=0; i<30;i++)
{

    //for NSString
    [arrayName addObject:[NSString stringWithFormat:@"%d", i]];

    //for  NSNumber
    [arrayName addObject:[NSNumber numberWithInt:i]];
}

然后在scrollViewDidEndScrollingAnimation中,执行以下任一条件:

if ([[arrayName objectAtIndex:anIndex] intValue] == 1)

if ([arrayName objectAtIndex:anIndex] isEqualToString:@"1"])