2013-11-22 82 views
1

我目前在UIScrollView中有一个ImageView,它填充了我的整个ViewController。将UIScrollView内部的图像分成若干部分

这是我如何设置它:

[imageView setImage:image]; 

CGSize size = [imageView sizeThatFits:imageView.frame.size]; 

CGSize actualSize; 
actualSize.height = imageView.frame.size.height; 
actualSize.width = size.width/(1.0 * (size.height/imageView.frame.size.height)); 

CGRect frame = imageView.frame; 
frame.size = actualSize; 
[imageView setFrame:frame]; 

的问题是,我希望把多个ImageViews(约2〜3)我的滚动型内。每个部分/图像还应包含一个标题,该标题在滚动时位于顶部,以实现Instragram应用(发布图像的用户名,请参见http://i.imgur.com/rxgSfOq.png)或Apple音乐应用程序(当前信函)中的效果。 这可能吗?

+0

调查UITableView。表格视图允许您在滚动列表中高效地显示许多项目(如Instagram的音乐),并允许您通过返回一个字符串来标记每个部分(如Music.app中)或将您自己的自定义视图与无论您想要什么信息(如Instagram)。 – Arman

回答

0

阿尔曼的评论是正确的 - 你应该使用UITableView。您将需要创建一个包含图像的自定义UITableViewCell。然后,您将为表格视图的每个部分提供一个图像,并且您将实施tableView:viewForHeaderInSection:以提供包含图像标题的视图。这部分标题视图是您描述为在滚动时停留在顶部的UI元素(如在Instagram中)。在这个过程中,你可能会非常熟悉如何实现UITableView,所以这里有一些阅读让你开始:

http://www.raywenderlich.com/tutorials(看看如何创建一个简单的iPhone应用系列,因为它的交易直接与表视图)

http://www.appcoda.com/customize-table-view-cells-for-uitableview/(其中谈到制作和使用自定义表视图细胞)

祝你好运!