UITableView 通过按下按钮对内容进行排序[关闭]
Posted
技术标签:
【中文标题】UITableView 通过按下按钮对内容进行排序[关闭]【英文标题】:UITableView sort content by pressing a button [closed] 【发布时间】:2013-06-05 22:32:50 【问题描述】:我有一个包含位置的表格视图,我想在按下按钮时按附近的位置过滤它们。我在想,当我按下按钮时,应用程序可以重新加载附近位置的表格视图,但我不知道如何进行过滤。
【问题讨论】:
如果它们不在附近,您想排除“过滤”位置吗?或者您只是想按从最近到最远的顺序显示它们?最新可以做NSArray
的方法sortedArrayUsingComparator:
对不起,我表达错误我想按最近的位置对它们进行排序
【参考方案1】:
假设您有一个CLLocation
对象中的NSArray
,我们称它为locations
和CLLocation *currenLocation
,代表您的当前位置。
NSArray *sortedLocations = [locations sortedArrayUsingComparator:^(id obj1, id obj2)
CLLocationDistance distance1 = [currentLocation distanceFromLocation: (CLLocation *)obj1];
CLLocationDistance distance2 = [currentLocation distanceFromLocation: (CLLocation *)obj2];
return distance1 - distance2;
];
编辑:您可以使用CLLocationManager
的对象通过委托方法获取用户位置的频繁更新。您可以通过startUpdatingLocation
启动它。查看this 为您提供更多信息。
如果您有地理位置,则可以通过– initWithLatitude:longitude:
创建一个CLLocation
。
【讨论】:
能否添加数组和当前位置的代码? 你是指实例化它们的代码吗? 是的,我以前在地图应用上使用了 CLLocationCoordinate2D,但我不知道该为谁做 @darkjuso 检查我的编辑以上是关于UITableView 通过按下按钮对内容进行排序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
通过在另一个 ViewController 中按下按钮/在另一个 ViewController 中引用 UITableView 创建 UITableViewCell