首页 > 解决方案 > 在 Here Places API 中获取 NMACategory 的 iconURL 的正确方法是什么?

问题描述

我有一组NMAPlaceLink用于搜索功能的对象。要为搜索结果添加图标,我首先获取 的类别placeLink,然后获取该iconURL类别的 。iconURL但是,在读取属性后,图标字符串仍然为空。难道我做错了什么?

(void)request:(NMARequest *)request didCompleteWithData:(id)data error:(NSError *)error{
  if ( ( [request isKindOfClass:[NMADiscoveryRequest class]]) && (error.code == NMARequestErrorNone)) {
    NMADiscoveryPage* page = (NMADiscoveryPage*) data;
    NSArray<NMALink*> *results = page.discoveryResults;
    NSUInteger size = [results count];
    for (int x = 0; x < size && x < 8; x++) {
      NMAPlaceLink *place = ((NMAPlaceLink *)results[x]);
      NMACategory *cat = place.category;
      NSString *icon = cat.iconUrl;
      if (icon)
      {
        NSLog(@"icon -> %@", icon);
        [icons addObject:[NSString stringWithString:icon]];
      }
      else{
        NSLog(@"no icon");
        [icons addObject:[NSString stringWithString:none]];
      }
    }
  _result = (NMADiscoveryPage*) data;
}

控制台记录no icon而不是iconURL.

标签: react-nativehere-api

解决方案


NMAPlaceLink 确实有类别,而不是 NMACategory,NMAPlace 应该获取该地点的 iconURL,请尝试用 NMAPlace 替换


推荐阅读