제 질문은 게시물의 맨 끝에 있습니다.플렉스 액션 스크립트 LatLngBounds가 작동하지 않습니다.
나는 모든 마커가 네 모서리의 모든 종류의 계산에 설정되도록 타이머를 설정하는 데 모든 것을 시도했지만 아무 것도 작동하지 않는 것 같습니다.
나는 markermanager에 마커를 추가 할 때마다, 나는이 작동하지 않는 이유를 알고 믿고
public function markerSetBounds(someLat , someLng):void{
var bounds:LatLngBounds = new LatLngBounds();
for(var i:int = 0; i < myMarkers.length; i++)
{
var currentLatLon:LatLng = new LatLng(someLat , someLng);
bounds.extend(currentLatLon);
}
googleMap.setZoom(googleMap.getBoundsZoomLevel(bounds));
googleMap.setCenter(bounds.getCenter());
}
아래에이 함수를 호출합니다. 한 번에 한 세트의 lat, lng 만 보내고 있습니다.
그러나 다음과 같이 시도했을 때 flex는 그것이 무엇인지 알 수 없다고 말했습니다. myMarkers[i].lat
. 내가 myMarkers 배열
var someMarker:Marker = new Marker(new LatLng(someLat , someLng), new MarkerOptions({tooltip:someAddress, hasShadow: true}));
myMarkers.push(someMarker);
이 내가 배열을 통과하는 방법이지만, 플렉스 수단 .lat 이해하지 않습니다 채우기 방법
다음이다.
for(var i:int = 0; i < myMarkers.length; i++)
{
var currentLatLon:LatLng = new LatLng(myMarkers[i].lat , myMarkers[i].lng);
bounds.extend(currentLatLon);
}
제 질문은 어떻게 currentLatLon을 설정하기 위해 myMarkers 배열을 통과합니까? 나는 또한 for each(var someObj:Marker in myMarkers)
을 시도했지만 아무것도 찾지 못합니다. 마커가지도에 표시되지만 경계가 작동하지 않습니다. 런타임에 문제가
(myMarkers[i] as Marker).lat
이것은 또는 컴파일 시간 :
이것은 완전히 유효한 코드입니다. 배열의 기본 항목은'Object' 유형이므로'myMarkers [i] .lat'을 컴파일해야합니다. 런타임에 오류가 발생하면 myMarkers [i] .lat'을 설정하지 않은 것입니다. 코드를 통해 디버그하고 참조하십시오. 참조 할 내용은 무엇입니까 –
Pranav. 나는 다음을 할 수 있었다. - 각 (someMarker in myMarkers) {var newLatLng : LatLng = someMarker.getLatLng(); Alert.show (newLatLng.toString()); bounds.extend (newLatLng);} 그러나 아직 추가 된 새로운 마커를 표시하는 경계를 확장하지 않습니다. – kronus