저는 Apple의 KMLViewer 코드를 사용하여 MKMapView에 트랙을 표시했습니다. Google 어스의 장소를 KML 파일로 저장하여 KML 파일을 만들지 만, KML 파일의 스타일 맵을 변경하지 않으면 트랙이지도에 표시되지 않습니다. KML 파일의 시작 부분에서 KMLViewer는 스타일 맵으로 인해 트랙을 표시하지 않습니다.
는 스타일 맵이다 : 나는 응용 프로그램을 실행하면 KML 파일이<Placemark>
<name>Track01</name>
<visibility>0</visibility>
<styleUrl>#lineStyle11000</styleUrl>
<LineString>
<tessellate>1</tessellate>
<coordinates>...
시작에서
<Style id="lineStyle0000">
<LineStyle>
<color>ff0600ff</color>
<width>4</width>
</LineStyle>
</Style>
<StyleMap id="lineStyle11000">
<Pair>
<key>normal</key>
<styleUrl>#lineStyle0000</styleUrl>
</Pair>
<Pair>
<key>highlight</key>
<styleUrl>#lineStyle01</styleUrl>
</Pair>
</StyleMap>
<Style id="lineStyle01">
<LineStyle>
<color>ff0600ff</color>
<width>4</width>
</LineStyle>
</Style>
그리고 트랙, 트랙하지 않습니다 전혀 나타나지 않습니다. # lineStyle11000에서 # lineStyle0000까지 트랙 시작 부분에 styleUrl 태그를 변경하면 정상적으로 표시됩니다. 이것은 하나 또는 두 개의 트랙을 표시 할 때 쉽게 할 수 있지만 성가심입니다. 하나의 KML 파일에 표시 할 트랙이 10 개 또는 15 개이면 실제로 시간이 많이 걸립니다.
이 문제를 방지하는 방법이 있습니까? Google 어스에서 모든 트랙을 쉽게 관리 할 수 있도록 보관하지만 앱에 넣을 때마다 파일의 텍스트를 수동으로 변경하지 않아도됩니다.
감사
필자는 수동으로 찾기 및 바꾸기를 해왔지만, 각 트랙 라인에는 독특한 스타일을 가진 자체 스타일 맵이 있기 때문에 실제로는 속도가 향상되지 않습니다. Apple의 KML 뷰어에 대한 더 나은 대안이 있습니까? 또는 Google 어스로 KML 파일을 만들 수 있습니까? – guthook
"styleURL"이있는 모든 행을 제거하면 스타일이 남아 있지 않으므로 kml이 잘로드됩니다. 파일을 열고 디스크에 다시 저장하고 Apple의 KML 코드를 계속하기 전에 해당 행을 제거하기 위해 앱을 약간 슬라이드 할 수 있어야합니다. – Craig