从android map api v2中的KML文件渲染CDATA HTML标记无法正常工作

时间:2016-05-10 10:41:22

标签: android google-maps google-maps-android-api-2 kml

在我的项目中,我使用原始文件夹中的KML文件在MapView API V2中渲染。但它不是渲染![CDATA]标签,其值为给定变量而不是显示变量本身。 以下是我的KML文件:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
  <name>Data+BalloonStyle</name>
  <Style id="golf-balloon-style">
     <IconStyle>
            <color>ff3644DB</color>
            <scale>1.1</scale>
            <Icon>
                <href>http://www.gstatic.com/mapspro/images/stock/503-wht-blank_maps.png</href>
            </Icon>
            <hotSpot x='16' y='31' xunits='pixels' yunits='insetPixels'>
            </hotSpot>
        </IconStyle>
     <BalloonStyle>
         <bgColor>ffffffbb</bgColor>
          <text><![CDATA[
          <b><font color="#CC0000" size="+3">$[name]</font></b>
          <br/><br/>
          <font face="Courier">$[description]</font>
          <br/><br/>
          Extra text that will appear in the description balloon
          <br/><br/>$[geDirections]
          ]]></text>

    </BalloonStyle>
  </Style>
  <Placemark>
    <name>Club house</name>
     <description>An example of BalloonStyle</description>
     <styleUrl>#golf-balloon-style</styleUrl>
     <ExtendedData>
      <Data name="geDirections">
        <value>1</value>
      </Data>
      <Data name="holeYardage">
        <value>234</value>
      </Data>
      <Data name="holePar">
        <value>4</value>
      </Data>
    </ExtendedData>
    <Point>
        <coordinates>103.80148899999995,1.440409,0.0</coordinates>
    </Point>
  </Placemark>
  <Placemark>
    <name>By the lake</name>
    <description>An example of BalloonStyle</description>
    <styleUrl>#golf-balloon-style</styleUrl>
    <ExtendedData>
      <Data name="geDirections">
        <value>5</value>
      </Data>
      <Data name="holeYardage">
        <value>523</value>
      </Data>
      <Data name="holePar">
        <value>5</value>
      </Data>
    </ExtendedData>
    <Point>
            <coordinates>103.90148899999995,1.440409,0.0</coordinates>
    </Point>
  </Placemark>
</Document>
</kml>

它显示变量名称$ [name],$ [description]和[geDirections]本身的infowindow。以下是输出: enter image description here

请提供有关此问题的一些信息。 谢谢!

1 个答案:

答案 0 :(得分:0)

通过: https://developers.google.com/maps/documentation/android-api/utility/kml

明确提到不支持$ [dataname]

“仅纯文本,不支持HTML内容”

“仅限非输入,否,或者不支持$ [dataName]格式的实体替换。”