使用Mapbox地点,我还能获得某个地点的所有“子”地点吗?

时间:2019-06-13 03:19:05

标签: android kotlin mapbox mapbox-android

我正在建立一个基于位置的市场,并将mapbox位置用于所有与位置相关的数据。

我目前正在构建市场过滤器,并且面临一些“问题”

假设我在这些位置有5种产品,由用户定义:

  1. 产品A-位置:萨潘,巴塞罗那
  2. 产品B-位置:西班牙马德里
  3. 产品C-位置:西班牙,欧洲
  4. 产品D-位置:西班牙巴塞罗那哥特区。
  5. 产品E-位置:欧洲

对于我的产品,给产品指定与产品d一样具体或与产品e一样宽的位置是很有意义的。

我的问题是,当按地理位置过滤产品并将其设置为“欧洲”时-只有产品e会出现,我希望它们都出现在这里。 如果过滤为“西班牙”,我希望出现产品A,B,C和D。 如果按“巴塞罗那”进行过滤,我希望出现产品A和D。

你掌握了它。

我该如何完成?我怎么能告诉系统类似的东西

if(product.location == filteringLocation || product.location.isChildOf(filteringLocation)){
showProduct()
}

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是将“欧洲” 添加到您的A,B,C,D产品中。 然后,您可以通过简单匹配每个位置给出的信息来查询它们。 这样可以确保您添加的每个产品都具有相同的签名,但是整个位置是可选的。