xCode,按距离顺序的表格视图单元格

Posted

技术标签:

【中文标题】xCode,按距离顺序的表格视图单元格【英文标题】:xCode, table view cells in distance order 【发布时间】:2012-06-07 20:18:32 【问题描述】:

在我的应用程序中,我正在尝试在距设备的距离范围内自行创建表格视图!所以假设我在表格中有 20 行,然后它们进入距离顺序。

唯一的问题是,我对制作应用程序还很陌生,所以可能需要非常详细的解释!多年来我一直在尝试这样做......

如果有人帮助我在 Xcode 中执行什么代码以及我需要做什么,请执行!将不胜感激!

有什么帮助吗?

【问题讨论】:

与移动设备的距离 tableView 中显示了哪些数据?尝试更具体,并且您尝试过的任何代码都可以帮助人们帮助您! 它基本上是每个俱乐部的名称...我也有每个场地的经度和纬度...所以希望表格视图进入每个俱乐部的距离顺序用户打开它:) 【参考方案1】:

我强烈建议您阅读 CLLocation (http://developer.apple.com/library/ios/#DOCUMENTATION/CoreLocation/Reference/CLLocation_Class/CLLocation/CLLocation.html),因为它会为您提供找出用户当前位置所需的所有信息。然后,一旦您有了当前位置,就可以使用该位置和每个位置的纬度/经度来计算距离。设置对象的距离后,您可以按对象的属性(在您的情况下为俱乐部)对它们进行排序。

我正在使用以下 sn-p 来计算从用户当前位置到另一个位置(在本例中为设施)的距离:

Facility *facility = [_facilities objectAtIndex:i];
CLLocation *facilityLocation = [[CLLocation alloc] initWithLatitude:[facility.latitude floatValue] longitude:[facility.longitude floatValue]];
if(facilityLocation)
    CLLocationDistance distance = [currentLocation distanceFromLocation:facilityLocation];
    double mileConversion = distance * 0.000621371192;

    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
    formatter.maximumFractionDigits = 1;
    facility.distanceFromCurrentLocation = [formatter numberFromString:[formatter stringFromNumber:[NSNumber numberWithDouble:mileConversion]]];

我不久前从 SO 的某个地方得到了英里转换,这是因为一英里有 1,609.344 米。如果您只需要仪表,则可以排除该转换。另请注意,我仅使用 1 位小数来显示 UI。

【讨论】:

以上是关于xCode,按距离顺序的表格视图单元格的主要内容,如果未能解决你的问题,请参考以下文章

表格视图中单元格之间的快速距离[关闭]

iOS/xCode 7 表格单元格不在 iPad 上绘图

向每个表格视图单元格添加数字 - iOS

如何使用 Xcode 7 UI 测试检查表格视图中的单元格是不是可见?

在 Xcode ui 测试 Swift 中查找表格单元格

ios表格视图单元格按行索引顺序加载图像