Клуб API Карт

Как правильно задать стили значка и баллуна в xml

ovvk-info
25 октября 2010, 12:04

Необходимо создать основной стиль для меток содержащий значок default#buildingsIcon и стиль баллуна plain#balloon. Есть еще наследующие стили у которых должен меняться стиль значка из http://api.yandex.ru/maps/jsapi/doc/ref/reference/styles.xml

Что делаю не правильно? Не смог найти ответ в руководстве и примерах. Вместо требуемого шаблона баллуна выскакивает только имя - http://ovvk-info.narod.ru/etech/index.html

<Style gml:id="PublicStyle" hasHint="true">
   <parentStyle>default#buildingsIcon</parentStyle>
   <balloonContentStyle>
      <template>#ballonTemplate</template>
   </balloonContentStyle>
   <hintContentStyle>
      <template>#hintTemplate</template>
   </hintContentStyle>
</Style>
<Template gml:id="ballonTemplate">
   <text><![CDATA[<div><font size="+1"><b>$[name]</b></font><br>Адрес: - $[metaDataProperty.AnyMetaData.adress]</div> <div><p>Выполенные работы: $[metaDataProperty.AnyMetaData.work] <br/><a href="/projects/$[metaDataProperty.AnyMetaData.prnum]">подробнее...</a></p></div>]]></text>
</Template>
<Template gml:id="hintTemplate">
  <text><![CDATA[$[name]]]></text>
</Template>
<Style gml:id="Shopping">
   <parentStyle>#PublicStyle</parentStyle>
   <iconStyle>
      <size x="27" y="26"/>
      <href>
         http://api-maps.yandex.ru/i/0.4/icons/shop.png
      </href>
   </iconStyle>
</Style>
5 комментариев
Подписаться на комментарии к посту
Шаблон баллуна поправил - теперь содержимое отображается правильно. Но не понятно как сделать стиль plain#balloon.
Ваша задача описана в примерах модуля PlainStyle:
http://api.yandex.ru/maps/jsapi/doc/mod/concepts/plainstyle.xml#examples

По такой же логике можете менять ваш YMapsML-файл.

Это я смотрел.


Но я же задаю


              #ballonTemplate

Нельзя же сделать:

 




              plain#balloon
              #ballonTemplate



 

И как быть с наследованием стиля иконок.


Для родительского стиля я могу задать plain#greenPoint.


А как быть с дочерними элементами (значками)?

Вы хотите, чтобы у ваших меток балун был стиля plainstyle, а значки ваши?
Если да, то примерно так:

http://maps.yandex.ru/ymaps/1.x"
       xmlns:repr="http://maps.yandex.ru/representation/1.x"
       xmlns:gml="http://www.opengis.net/gml"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://maps.yandex.ru/schemas/ymaps/1.x/ymaps.xsd">
                                                                                                                                                                                      
       
            plain#lightbluePointtStyle>
       

       
            #parentStyle
           
               
                http://api-maps.yandex.ru/i/0.4/icons/shop.png
           
       
   

   
       
           
                #myShop
                Название
                Описание
               
                    37.561598 55.692394
               
           
       
   


Ну и в родительский стиль вставьте еще ваш шаблон для содержимого балуна.