菜鸟教程小白 发表于 2022-12-12 16:19:36

ios - 如何从iOS中的位置数组中找到5m到10m范围内的最近位置?


                                            <p><p>这是我的代码,我希望距离当前位置最近的位置在 10 米范围内,并且我想添加所有最近的位置以及此人的详细信息作为响应还添加 array.thanks</p>

<p>这是我来自服务器的响应</p>

<pre><code>{
    born = 0;
    completed = 0;
    &#34;emergency_id&#34; = &#34;-1&#34;;
    eyes = &#34;&#34;;
    feet = 0;
    &#34;first_name&#34; = Neil;
    glasses = No;
    hair = &#34;&#34;;
    inch = 0;
    language = &#34;&lt;null&gt;&#34;;
    &#34;last_name&#34; = Ferris;
    latitude = &#34;30.1456987&#34;;
    longitude = &#34;76.69916&#34;;
    marks = &#34;&#34;;
    &#34;member_id&#34; = 21634;
    picture = &#34;&#34;;
    &#34;profile_id&#34; = 5826;
    type = 1;
    updated = &#34;2015-09-16 06:32:08&#34;;
    weight = 0;
}      
</code></pre>

<p>像上面一样,我从服务器获得了 5000 个用户,在我通过当前位置以 10 米的距离进行过滤后,我需要在表格 View 中显示在 10 米以下范围内的列表</p>

<pre><code>- (void)getdata
{
    NSString * apiURLStr =;

    NSString *outputStr = encoding:NSUTF8StringEncoding error:nil];
    NSDictionary *response;
    if (outputStr == nil)
    {
      return;

    }

    NSData* data = ;
    NSError *error;
    response = ;

    NSMutableArray *array=[init];
    CLLocation *closestLocation = nil;
    for (NSDictionary *dict in response)
    {
      NSString *latitude=;
      NSString *longitude=;

      CLLocation *location = [ initWithLatitude:latitude.doubleValue
      longitude:longitude.doubleValue];

      ;
    }

    CLLocationDistance closestLocationDistance = DBL_MIN;

    for (CLLocation *location in array)
    {
      if (!closestLocation) {
            closestLocation = location;
            closestLocationDistance = ;
            continue;
      }
      CLLocationDistance currentDistance = ;
      if (currentDistance &lt; closestLocationDistance)
      {
            closestLocation = location;
            closestLocationDistance = currentDistance;
      }
    }

    NSLog(@&#34;closestLocation %@&#34;,closestLocation.description);
    NSLog(@&#34;closestLocationDistance %f&#34;, closestLocationDistance);
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><blockquote>
<p>thanks for answer bro,but i want list of closest locations in below 10 meters range.</p>
</blockquote>

<pre><code>NSMutableArray *locationsInRange = ;

for (CLLocation *location in array)
{
    CLLocationDistance currentDistance = ;
    if (currentDistance &lt; 10)
    {
      ;
    }
}

NSLog(@&#34;locations in 10 metters %@&#34;,locationsInRange.description);
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何从iOS中的位置数组中找到5m到10m范围内的最近位置?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/32758916/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/32758916/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何从iOS中的位置数组中找到5m到10m范围内的最近位置?