如何在iOS中创建图像滑块?

时间:2015-07-04 11:26:49

标签: ios objective-c uiimageview

我想知道如何创建图像滑块,就像我们用来浏览不同iOS应用中的图片一样,例如在照片或Airbnb应用中。

它是一个带有图像视图的页面控制器吗? 或者它是一个uicollectionview? 或者它只是一个滚动视图?

我已经搜索了很多,虽然我在github上找到了一个很好的图书馆,但我还没有找到任何人都使用的常用解决方案。

这是airbnb app中图像滑块的示例。 Image slider under navigation bar

3 个答案:

答案 0 :(得分:5)

尝试使用此代码创建使用UIScrollView的图像滑块显示。

int x=0;
self.scrollView.pagingEnabled=YES;
NSArray *image=[[NSArray alloc]initWithObjects:@"1.png",@"2.png",@"3.png", nil];
for (int i=0; i<image.count; i++) 
{
    UIImageView *img=[[UIImageView alloc]initWithFrame:CGRectMake(x, 0,[[UIScreen mainScreen] bounds].size.width, self.scrollView.frame.size.height)];
    img.image=[UIImage imageNamed:[image objectAtIndex:i]];
    x=x+[[UIScreen mainScreen] bounds].size.width;
    [self.scrollView addSubview:img];
}
self.scrollView.contentSize=CGSizeMake(x, self.scrollView.frame.size.height);
self.scrollView.contentOffset=CGPointMake(0, 0);

答案 1 :(得分:2)

我的项目https://github.com/kimar/KIImagePager上使用了一个很棒的图片滑块lib,绝对值得一试。 以下是将库与项目集成的几个步骤。

  1. 下载并将库导入您的项目
  2. 将视图添加到您的nib文件(如果您将其与nib文件一起使用),将视图类设置为使用KIImagePager
  3. 设置其示例页面上显示的属性。
  4. 然后你去了,你的项目上会有工作图像滑块。

答案 2 :(得分:0)

您可以使用UPCarouselFlowLayout,就像使用该库在airBnB中一样创建图像幻灯片。