无法滚动iCarousel图像

时间:2014-02-11 07:12:40

标签: ios objective-c icarousel

我在我的小应用程序中使用iCarousel库。我通过Web服务获取图像URL并将这些图像放到iCarousel库中。

首先,我创建了一个UIView,并将iCarousel添加为相应的类。后者设置数据并删除同一类门。

现在一切看起来很酷,我可以看到图像,但我无法刷图像。

以下是我的代码。

- (NSUInteger)numberOfItemsInCarousel:(iCarousel *)carousel
{
    //return the total number of items in the carousel
    return [galleryItems count];
}

- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view
{
    UILabel *label = nil;

    //create new view if no view is available for recycling
    if (view == nil)
    {
        //NSString *ImageURL = @"YourURLHere";
        //NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:ImageURL]];
        //imageView.image = [UIImage imageWithData:imageData];

        view = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 200.0f, 200.0f)];

        //[((UIImageView *)view) setImageWithURL:[NSURL URLWithString:@"http://www.pizzatower.com/img/icons/Pizza-icon.png"]];
        NSURL *imageURL = [[galleryItems objectAtIndex:index] galleryURL];
        [((UIImageView *)view) setImageWithURL:imageURL];

        view.contentMode = UIViewContentModeScaleAspectFit;
        label = [[UILabel alloc] init];
        label.backgroundColor = [UIColor clearColor];
        label.font = [label.font fontWithSize:20];
        label.tag = 1;
        // label.contentMode = UIViewContentModeBottom;
        //        label.frame = CGRectMake(
        //                                       self.view.frame.size.width - label.frame.size.width,
        //                                       self.view.frame.size.height - label.frame.size.height,
        //                                       label.frame.size.width,
        //                                       label.frame.size.height );
        //label.bounds = view.bounds;
        [view addSubview:label];
    }
    else
    {
        //get a reference to the label in the recycled view
        label = (UILabel *)[view viewWithTag:1];
    }

    //set item label
    //remember to always set any properties of your carousel item
    //views outside of the `if (view == nil) {...}` check otherwise
    //you'll get weird issues with carousel item content appearing
    //in the wrong place in the carousel
    //label.text = [[galleryItems objectAtIndex:index] galleryDescription];

    return view;
}

我使用了相同的代码库,并且在其他项目中使用了它。不知道我在这里错过了什么。有人可以赐教。

2 个答案:

答案 0 :(得分:1)

包含轮播的UIView可能将userInteractionEnabled设置为NO。

另一种可能性是包含旋转木马的UIView可能比旋转木马小,因此阻止了相互作用。尝试设置其背景颜色以查看其真实大小。

答案 1 :(得分:0)

我建议在故事板中删除你的笔尖或ViewController并重新创建它。我曾经有同样的问题,在重新创建它之后就有用了。放置UIView时(水平和垂直)确保放在中心位置