【问题标题】:read latitude and longitude from sqlite iphone从 sqlite iphone 读取纬度和经度
【发布时间】:2011-08-06 15:08:35
【问题描述】:

我已经为此苦苦挣扎了很久。我阅读了很多资源,但仍然无法找到明确的解决方法。

我有一个包含经纬度行的 Sqlite 表。我的任务是获取这些纬度和经度并将它们放入一个数组中,然后稍后用于在地图上显示所有图钉。我在我的 AppDelegate 中执行这些“从数据库读取”(这是可取的还是在具有地图的视图控制器中更好?)

如下所示,我获取 lat 和 long 作为 double 值

while (sqlite3_step(selectStmt)==SQLITE_ROW){
    double latitude= sqlite3_column_double(selectStmt, 1);
    double longitude= sqlite3_column_double(selectStmt, 2);

    CLLocationCoordinate2D coord=CLLocationCoordinate2DMake(latitude,longitude);
            // I want to add this to an array, so that i can use later for annotations
}

但是,当我尝试添加“addObject 参数 1 的不兼容类型”时。

这是从 sqlite 获取多个坐标以显示在地图上的正确方法吗?

我们将不胜感激

【问题讨论】:

    标签: iphone xcode sqlite cllocationmanager cllocation


    【解决方案1】:

    您需要使用 CLLocation 类来存储您的位置数据。 http://developer.apple.com/library/ios/#DOCUMENTATION/CoreLocation/Reference/CLLocation_Class/CLLocation/CLLocation.html#//apple_ref/doc/uid/TP40007126

    CLLocation *location = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude];
    [array addObject:location];
    [location release];
    

    【讨论】:

      【解决方案2】:

      CLLocationCoordinate2D 是一个结构而不是一个对象,您需要 addObject 方法的对象。

      您可以按照 Evgeniy 的建议使用 CLLocation 或创建自己的对象来存储/检索这些值。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多