作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Parse 中有 PFGeoPoint 并且有一个 serachView,用户将在其中输入以英里为单位的半径。因此它将返回一个在 dat 半径范围内的用户列表。
我知道我们可以从坐标获取距离,但我不知道如何让所有用户都到那里并一一检查。
如果有人可以给我一些建议,那么这对我是一个很大的帮助,因为我是 iOS 和 Parse 的新手。
最佳答案
已编辑
Parse 实际上有一个简单的解决方案:
int radiusInKilometers = 400; //Example
PFGeoPoint * myGeoPoint = [PFUser currentUser][@"geoPoint"]; // Your geoPoint
PFQuery *query = [PFUser query];
[query whereKey:@"geoPoint" nearGeoPoint:myGeoPoint withinKilometers:radiusInKilometers];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
NSLog(@"Successfully retrieved %d scores.", objects.count);
// Do something with the found objects
for (PFObject *object in objects) {
// DISTANCE
PFGeoPoint * geoPoint1 = [PFUser currentUser][@"geoPoint"];
PFGeoPoint * geoPoint2 = userObject[@"geoPoint"];
CLLocation *location1 = [[CLLocation alloc]
initWithLatitude:geoPoint1.latitude
longitude:geoPoint1.longitude];
CLLocation *location2 = [[CLLocation alloc]
initWithLatitude:geoPoint2.latitude
longitude:geoPoint2.longitude];
CLLocationDistance distance = [location1 distanceFromLocation:location2];
// Print out the distance
NSLog(@"There's %d km between you and this user", distance);
}
} else {
// Details of the failure
NSLog(@"Error: %@ %@", error, [error userInfo]);
}
}];
您可以将 withinKilometers
更改为 withinMiles
。
关于ios - 如何使用 PFGeoPoint 在给定的距离半径内获取用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30451957/
我是一名优秀的程序员,十分优秀!