Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS用户界面开发:构建文档的方法;选择器";屏幕_Ios_Uiscrollview_User Experience - Fatal编程技术网

iOS用户界面开发:构建文档的方法;选择器";屏幕

iOS用户界面开发:构建文档的方法;选择器";屏幕,ios,uiscrollview,user-experience,Ios,Uiscrollview,User Experience,我希望构建一个文档“选择器”屏幕,类似于iPad/iPhone上的页面和数字: 我来自WPF背景,有一些iOS经验。话虽如此,我正在寻找一种很好的方法来构建类似苹果用于在页面中打开文档的基于瓷砖的界面 我不关心文件夹动画 构建平铺界面的最佳方法是什么?我会想象我会构建某种位于UIScrollView中的视图,但我对该子视图的性质有点困惑。iOS是否有任何包装面板或类似网格的控件,我可以将一组磁贴(即文档)加载到其中 你们觉得怎么样?我想到,有一些第三方类/库可以用来生成此功能。但是没有默认的e

我希望构建一个文档“选择器”屏幕,类似于iPad/iPhone上的页面和数字:

我来自WPF背景,有一些iOS经验。话虽如此,我正在寻找一种很好的方法来构建类似苹果用于在页面中打开文档的基于瓷砖的界面

我不关心文件夹动画

构建平铺界面的最佳方法是什么?我会想象我会构建某种位于
UIScrollView
中的视图,但我对该子视图的性质有点困惑。iOS是否有任何包装面板或类似网格的控件,我可以将一组磁贴(即文档)加载到其中


你们觉得怎么样?

我想到,有一些第三方类/库可以用来生成此功能。但是没有默认的easy类


如果我要开发这种类型的实现,我会将UITableViewController子类化。将其展开以具有列。然后将UITableViewCell子类化以显示图像。这样,所有容器代码和所有内容都已经存在,您所要做的就是根据您的需要对其进行自定义。

我不知道有任何第三方类可以为您处理此问题,但可能还有一些

基本结构将是一个UIScrollView,其中包含一组视图,每个视图表示网格上的一个单元。根据平铺的总数设置滚动视图的
contentSize
。然后根据需要创建平铺视图,并将其放置在滚动视图中

滚动视图的委托对象将负责监视滚动位置,在平铺视图可见时放下平铺视图,以及(可选)移除移出视图的平铺视图。这就是UITableView的基本工作原理:在任何给定的时间,UITableViewCell只有大约六个实例,当您上下滚动视图时,它们会被回收。(想象一下,一列火车的后端有人拉出铁轨,把它们向前传递给前面的人,然后把它们放在火车前面。据火车所知,铁轨可以行驶数英里。)


如果您不得不自己放置所有视图,请花一些时间学习CGRect系列方法,包括
CGRectDivide
。它们将有助于布局视图,也有助于计算哪些是可见的,哪些是不可见的。

哦,天哪,不要将此强制到UITableView中。您将反对各种默认行为,如行选择。一个普通的滚动视图要好得多。哈哈,你有一些需要战斗,但你也得到了很多。您可以创建自己的自定义纯滚动视图。做这件事最简单的方法是意见问题。我也不知道行选择会有什么问题,uitableview知道您选择的是哪一行。。。