我按照本教程制作了第一个应用程序:

http://icodeblog.com/2009/12/21/introduction-to-mapkit-in-iphone-os-3-0/

我真的很想知道如何按与用户的距离排序表中的注释(最近的注释是表中的第一个注释)怎么可能呢?

我知道我必须使用CLLocation来找到用户的位置,但是我不知道。

有人可以帮我吗?

干杯,

预先感谢您的帮助,

编辑:我添加了详细信息:

数据不在数组中,它在RootViewController.m中以以下形式实现:

-(void)loadOurAnnotations
{
    CLLocationCoordinate2D workingCoordinate;

    workingCoordinate.latitude = 40.763856;
    workingCoordinate.longitude = -73.973034;
    iCodeBlogAnnotation *appleStore1 = [[iCodeBlogAnnotation alloc] 

    initWithCoordinate:workingCoordinate];
    [appleStore1 setTitle:@"Apple Store 5th Ave."];
    [appleStore1 setSubtitle:@"Apple's Flagship Store"];
    [appleStore1 setAnnotationType:iCodeBlogAnnotationTypeApple];

    [mapView addAnnotation:appleStore1];

... 等等。 那怎么可能呢?

您可以在此处找到源代码:

icodeblog.com/wp-content/uploads/2009/09/iCodeMap.zip

teddafan

#1楼 票数:3

CLLocation您可以使用

- (CLLocationDistance)distanceFromLocation:(const CLLocation *)location

计算一个物体到另一个物体的距离。 在这种情况下,大概是用户的当前位置。

如果数据在NSArray ,则可以使用sortedArrayUsingFunction调用调用此方法的帮助函数。

#2楼 票数:1

遍历CLLocations并找到它们与您当前位置之间的距离。

然后使用自己的排序算法对数组中的距离进行排序。

for (CLLocation *loc in locations) {
  [distances addobject:[currentLocation distanceFromLocation:loc]];
}
[distances sort]; /* Own sorting algorithm */
[yourTable reloadData];

  ask by teddafan translate from so

未解决问题?本站智能推荐:

1回复

具有多个注释的Mapkit

我有一个显示多个注释的地图。 我想模仿照片内置应用程序(iOS 4)上“地方”选项卡的行为,其中注释会自动连接在一起或在用户更改缩放级别时拆分。 我怎么做? 谢谢!
2回复

iPhone3.0MapKit-同一位置的多个注释

背景:我创建了一个应用程序,允许用户向在线数据库提交条目,并查看该数据库中的其他条目。 这些条目包含纬度和经度的地理编码,用于在MapKit上定位注释。 用户可以使用其当前位置或地址提交位置,然后对其进行地理编码。 问题:处理落在完全相同坐标上的注释的正确或建议方法是什么? 我当时正
1回复

iPhoneMapKit注释的当前位置

我目前正在努力使用注释。 我如何防止蓝色GPS点的AnnotationLable。 ( 这是一张图片 ) 上面的功能无法正常工作,我意识到我无法比较两个坐标。 任何提示都欢迎。 西蒙
2回复

多个注释(MKAnnotationView)在同一位置坐标

嗨,如果用户触摸,我正在尝试实现Annotations分组和动画。 我确实看了一个不同的集群库解决方案,但这对我不起作用,因为我在同一个坐标中有多个注释。 所以这就是我想要做的 1-我在同一个地方(坐标)中识别出多个注释的位置? 怎么能实现这个? 在相同的坐标中找到注释并创建一个
2回复

隐藏地图注释而不删除它们

使用MKMapView我加载了一堆annoatations,我希望能够过滤使用分段控件显示的注释。 我正在使用带有类型变量的自定义注释,因此我可以将它们彼此区分开,但我无法找到隐藏和显示注释视图子集的方法。
1回复

iPhoneMapKit多个注释问题。这是正确的进行方式吗?

我正在尝试使用MapKit为iPhone开发第一个简单的应用程序。 现在,我可以通过此简单代码在地图上显示多个注释。 MyAnnotation是生成注释的类,而initWithInfo是设置坐标和标题的方法。 上面的代码需要为每个注释创建一个不同的MyAnnotation对象,但是我将需
1回复

如何在地图注释视图中找出引脚ID?

如何找到被点击的引脚的引脚ID(即引脚标题和副标题的详细信息)? 我有这个来显示引脚注释。 这段代码在视图中加载: 在代表中: 并点击信息按钮: 记录catch是新类对象的位置。
4回复

添加另一个时如何删除以前的注释引脚?

我有一个UITableView,每个单元格都包含一个Map按钮。 当我点击每个按钮时,会显示地图视图并添加相应的注释引脚。 点击每个地图按钮时会调用此代码, 这是MyMapAnnotation的代码, 一切正常。 现在,当我点击一个按钮时,会显示相应的注释引脚,当我点击第二个按钮