【发布时间】:2015-10-04 12:06:40
【问题描述】:
我有一个包含 977 个数据的数组,我一直在尝试将其拆分为 UITableView 中的 20 个部分,但我无法正确处理,我正在尝试动态进行。就像如果我得到一个 312 或 32 或 545 的数组,等式应该将它除以,并在数组中添加最后一个奇数元素,我将新数据放入数组数组中。
这就是我正在做的事情:
var dataof977 = Mydata()
var mutA = NSMutableArray()
for (var i = 0; i < 19; i++)
{
var halfArray : NSArray!
var theRange = NSRange()
theRange.location = i*19;
theRange.length = dataof977.afa.count / 19
halfArray = dataof977.afa.subarrayWithRange(theRange)
mutA.addObject(halfArray)
}
注意:dataof977是类的引用,afa是一个字符串数组。
我在这里缺少什么?s
【问题讨论】:
-
不清楚
Mydata()会产生什么样的数据。你必须解释你的神秘变量名,比如afa之类的。 -
您的
location变量还需要基于新子数组的长度。无论原始数组的长度是多少,每次迭代的位置都是 0、19、38……。相反,location必须是i * newsubarraylen。 -
@vacawama ,但有时它不会是偶数?我需要怎么做?
-
您需要决定如何划分它们。例如,您想如何将 7 个项目分成 20 个部分?前 19 个部分得到 0,第 20 个部分得到 7 还是前 7 个部分得到 1,接下来的 13 个部分得到 0。23 个项目怎么样?是前 3 个部分获得 2,然后其余部分获得 1,还是前 19 个部分获得 1,最后一个获得 4?
-
我认为我能得到的最低数组超过 35 个项目,所以它不应该成为一个大问题。我只是在尝试动态计算和划分,这真的花了我很多时间。 @vacawama。
标签: ios arrays swift uitableview nsrange