ios - Tinder 在 Objective-c 中加载照片的算法。用 Parse.com 复制它

标签 ios objective-c iphone algorithm parse-platform

<分区>

这完全是一个理论问题,但我们开始吧。我正在构建一个类似于 Tinder 的应用程序,该应用程序将连续加载个人资料照片,用户可以喜欢或不喜欢。好吧,我在服务器端使用 Facebook 的 Parse,但我在加载照片时远没有达到 Tinder 的速度。在我非常初级的算法中,每次喜欢或不喜欢一个人时,应用程序都会加载一个新名字和一张新照片,这需要大约 1 或 2 秒的时间才能发生。所以,我想知道现在是否有人有更好的方法来加载一系列照片以向用户展示它们。

我正在考虑在应用启动时加载 5 张照片,当用户关闭第一张照片时,第 6 张照片将开始下载。这会给我一些时间优势,但我认为 Tinder 不是这样做的。

任何线索!?

谢谢大家!

最佳答案

我不完全了解 Tinder 是如何做到的,但我认为您的方向是正确的。您可以使用 Parse 的查询约束来获得您想要的行为。

你可以这样做(使用 Swift):

//When the app starts
var query = PFQuery(Classname: "YourClassName")
query.limit = 5 //Get the first five profiles


//When the user swipes away a profile
//Assuming you have stored the profiles in an array called, say, "userProfiles"
var query = PFQuery(Classname: "YourClassName")
query.skip = userProfiles.count //Skip the results already loaded

当然,您必须完成查询才能获取正确的用户。

如果您发现用户在配置文件中滑动的速度太快,您可以尝试使用 .limit.skip 的值。

我不是算法专家,但我建议一个很好的起点是找出用户特定的滑动之间的平均时间,并将其与加载数据所需的平均时间进行比较.不过,我相信在编写算法方面具有更多经验的人可以为您提供更具体的答案。

关于ios - Tinder 在 Objective-c 中加载照片的算法。用 Parse.com 复制它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26747524/

相关文章:

ios - 当 NSMutableDictionary 不同时,同一对象一遍又一遍地保存到 NSUserDefaults

objective-c - NSFileManager setUbiquitous:是,我的文件陷入了困境!为什么?

iphone - 奇怪的 LLVM 警告 : no previous prototype for function for

iphone - 将 UITextField 放置在 View 的中心

ios - 在 iPad 设备上运行 iOS 应用程序

objective-c - 将 Zxing 包含到 Xcode 4.3 + Obj-C 时出现 undefined symbol

ios - 当superview高度常数设置为零时如何完全隐藏内部 View

ios - iPhone-如何在圆形按钮的 ImageView 中设置纵向/横向图像

iphone - 如何合并带有注释的 PDF 文件

ios - 网络完成 block 、递归和 ARC 保留循环