是的。就像照片显示的那样,它是一个像instagram一样的个人资料视图的样式样式。当用户按下网格按钮时,视图将按网格样式显示图像。当用户按下列表按钮时,视图将在列表中显示图像,网格视图为hide。按下任何按钮用户,用户配置文件视图将永远不会更改。
我有几个计划来处理这种情况,但我认为我的计划没有优化。所以我渴望听到更好的想法。
我可以在这里分享我的计划:
计划A:
UIViewController
-> UITableView
-> UIView ( as the user profile UIView )
-> UITableViewCell1 ( could be the first section's cell and include all images with grid style )
-> UITableViewCell2 ( when the style changed to list , reuse another UITableViewCell for handling )
当用户按下Grid按钮时,只显示Cell1.Otherwise它将显示Cell2。
我认为这个计划很奇怪,因为视图的结构。尤其是UITableViewCell1。
B计划:
UIScrollViewContrller
-> UITableView ( for handling images in list style )
-> UICollectionView ( for handling images in grid style )
在这个解决方案中,我可能面临另一个问题:在scrollView.Maybe中处理scrollView我应该添加一个平移手势来检查垂直滚动,用户可以感觉到滚动是完美的。
当用户按下网格按钮时,它会显示UITableView.Otherwise显示UICollectionView。
真的希望听到你的意见。
答案 0 :(得分:0)
计划A看起来太复杂IMO,尤其是那个高级视图表视图。您可以使用表格视图做很多事情,但它们也有缺点,对它们进行精确控制可能会耗费大量时间。我甚至根本就不使用它们,我个人除了看起来像列表的东西之外,我再也不会用它们了。
无论如何为了使事情更易于管理,您可以考虑在下半部分添加容器视图,在该容器视图中,您将为每个不同的显示加载单独的视图控制器。 这样你就可以对代码进行大量分区 - 也就是说你有一个视图控制器,它只负责显示网格,另一个视图控制器只显示列表风格等等。