2013-01-08 2 views

답변

0

그림과 같이 한계 매개 변수를 사용하는 것이 가장 좋은 방법입니다. 기본값은 20 곳이지만, 그것은 또한 편안하고 장소 API에 액세스하는 결과 집합에 묻혀 다음 URI,이 100

searchManager.findPlacesByCategory({ 
     category: category, 
     onComplete: processResults, 
     searchCenter: searchCenter, 
     limit: 50, 
    }); 

로 확장 할 수 있지만이있을 나타나지 않습니다 2.2.3 API에서 해당 데이터를 처리하기위한 모든 공용 함수.

가 여기에 API 탐색기 예에 따라 완벽하게 동작하는 예제입니다 : http://developer.here.net/apiexplorer/examples/api-for-js/places-search/places-search-by-category.html

당신은 얻을 필요가 당신이 일을 얻을 app id and token 무료로 자신의.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<!-- 
    Example from Nokia Maps API Playground, for more information visit http://api.maps.nokia.com 
--> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <meta http-equiv="X-UA-Compatible" content="IE=7; IE=EmulateIE9"/> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
     <title>Nokia Maps API Example: Search by category</title> 
     <meta name="description" content="Search by category"/> 
     <meta name="keywords" content="search, services, places, category"/> 
     <!-- For scaling content for mobile devices, setting the viewport to the width of the device--> 
     <meta name=viewport content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/> 
     <!-- By default we add ?with=all to load every package available, it's better to change this parameter to your use case. Options ?with=maps|positioning|places|placesdata|directions|datarendering|all --> 
     <script type="text/javascript" charset="UTF-8" src="http://api.maps.nokia.com/2.2.3/jsl.js?with=all"></script> 
     <!-- JavaScript for example container (NoteContainer & Logger) --> 
     <style type="text/css"> 
      html { 
       overflow:hidden; 
      } 

      body { 
       margin: 0; 
       padding: 0; 
       overflow: hidden; 
       width: 100%; 
       height: 100%; 
       position: absolute; 
      } 

      #mapContainer { 
       width: 80%; 
       height: 80%; 
       left: 0; 
       top: 0; 
       position: absolute; 
      } 
      #progress { 
       width: 80%; 
       height: 10%; 
       left: 0; 
       top: 80%; 
       position: absolute; 
      } 
      #buttons { 
       width: 80%; 
       height: 10%; 
       left: 0; 
       top: 90%; 
       position: absolute; 
      } 
     </style> 
    </head> 
    <body> 
     <div id="mapContainer"></div> 
     <div id="progress"></div> 
     <div id="buttons"> 
     <a onClick="search1();return false;" href="#">Find 20 Places</a> 
     <a onClick="search2();return false;" href="#">Find 50 Places</a> 
     </div> 
     <script type="text/javascript" id="exampleJsSource"> 
/* Set authentication token and appid 
* WARNING: this is a demo-only key 
* please register on http://api.developer.nokia.com/ 
* and obtain your own developer's API key 
*/ 
nokia.Settings.set("appId", "YOUR APP ID"); 
nokia.Settings.set("authenticationToken", "YOUR TOKEN"); 


// Get the DOM node to which we will append the map 
var mapContainer = document.getElementById("mapContainer"); 
// Create a map inside the map container DOM node 
var map = new nokia.maps.map.Display(mapContainer, { 
    // Initial center and zoom level of the map 
    center: [52.51, 13.4], 
    zoomLevel: 10, 
    components: [  
     new nokia.maps.map.component.Behavior() 
    ] 
}); 

var searchCenter = new nokia.maps.geo.Coordinate(52.51, 13.4), 
    searchManager = nokia.places.search.manager, 
    resultSet; 


var resultDataJF; 

// Function for receiving search results from places search and process them 
var processResults = function (data, requestStatus, requestId) { 
    var i, len, locations, marker; 

    resultDataJF = data; 
    if (requestStatus == "OK") { 
     // The function findPlaces() and reverseGeoCode() of return results in slightly different formats 
     locations = data.results ? data.results.items : [data.location]; 
     // We check that at least one location has been found 
     if (locations.length > 0) { 
      // Remove results from previous search from the map 
      if (resultSet) map.objects.remove(resultSet); 
      // Convert all found locations into a set of markers 
      resultSet = new nokia.maps.map.Container(); 
      for (i = 0, len = locations.length; i < len; i++) { 
       marker = new nokia.maps.map.StandardMarker(locations[i].position, { text: i+1 }); 
       resultSet.objects.add(marker); 
      } 
      // Next we add the marker(s) to the map's object collection so they will be rendered onto the map 
      map.objects.add(resultSet); 
      // We zoom the map to a view that encapsulates all the markers into map's viewport 
      map.zoomTo(resultSet.getBoundingBox(), false); 
     } else { 
      alert("Your search produced no results!"); 
     } 
    } else { 
     alert("The search request failed"); 
    } 
}; 



// Binding of DOM elements to several variables so we can install event handlers. 
var progressUiElt = document.getElementById("progress"); 


search1 = function(){ 
// Make a place search request 
var category = "eat-drink"; 
progressUiElt.innerHTML = "Looking for places in the '" + category + "' category...'"; 
searchManager.findPlacesByCategory({ 
    category: category, 
    onComplete: processResults, 
    searchCenter: searchCenter 
}); 
} 


search2 = function(){ 
// Make a place search request 
var category = "eat-drink"; 
progressUiElt.innerHTML = "Looking for places in the '" + category + "' category...'"; 
searchManager.findPlacesByCategory({ 
    category: category, 
    onComplete: processResults, 
    searchCenter: searchCenter, 
    limit: 50, 
}); 
} 


     </script> 
    </body> 
</html> 
+0

감사합니다. jason.now에게 100 개 결과가 표시됩니다 .500 또는 1000 주변에 더 많은 결과가 나타날 수 있습니다. – soundar

관련 문제