我正在使用Google Places API。
我在我的日志中找到了正确的位置,但我只想要这个地方类型的名称。让我们说这是我的输出
Place' Parque Las Tejas'有可能:0.950000类型:[69,1013,34]
所以,起初我得到了我所在的位置,我可能在哪里,然后我才使用:
List<Integer> types = placeLikelihood.getPlace().getPlaceTypes();
认为它会像#&#34; park&#34;或&#34; square&#34;但不是那样,我得到那些数字[69, 1013, 34]
。
根据我read here的内容,有很多类型可以定义某个地方。
我想要的只是获得那种类型,所以如果我在一家餐馆,我不想要餐馆的名称,而只需要类型,所以"Restaurant"
将会是我的输出。
我需要这个,因为我想根据用户的位置为用户提供选项。
知道我做错了吗?
答案 0 :(得分:2)
根据文档,您获得的List<Integer>
实际上是地点类型的ID:
此列表的元素来自Place.TYPE _ *
列表为here。所以基本上你的目标是使用这个列表将int代码转换为字符串。您可以找到解决方案here,基本上您从Place
类中获取所有字段,找到以&#34; TYPE&#34;开头的所有字段,获取int值并将其与您从getPlaceTypes()
获得的价值。
答案 1 :(得分:1)
即使这是一则旧文章,如果您遇到此问题,它也会为您提供帮助, 我遇到了这个问题 这是我的方法
List<Place.Type> types = placeLikelihood.getPlace().getTypes();
要获取所有类型,可以使用foreach循环
for(Object type:types){
// get all individual type
}