Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

YandexMapKit vs Yandex - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Вылеты игр у пользователей http://www.cyberforum.ru/android-dev/thread1704414.html
Сужу и по играм, с которыми работаю и по просто играм в маркете. Даже у топовых компаний-разрабов есть вылеты у юзеров, и это происходит стабильно от релиза к релизу. Залили новый релиз. У одно...
Программирование Android Как получить GeoCode в yandex mapkit? Как получить GeoCode зная координаты? http://www.cyberforum.ru/android-dev/thread1704375.html
Программирование Android Как запустить метод в сервисе, в определённое время?
Как запускать метод в сервисе, с понедельника по пятницу в определённое время? Подскажите пожалуйста кто знает куда смотреть?
Библиотека View Injector Программирование Android
Господа android разработчики. Хотел бы представить Вашему вниманию свою маленькую библиотеку для view injection. Честно говоря, надоело постоянно инфлейтить и искать (findViewById) вьюхи, так...
Программирование Android Работа с сервером напрямую с приложения http://www.cyberforum.ru/android-dev/thread1704065.html
Добрый вечер. Посоветуйте да библиотеку для работы между базой (MYSQL) и приложением Чтобы не получать запросы из JSON а работать напрямую.
Программирование Android Мини чат, тонкости разработки Например приложение Viber и его аналоги.. Как в них реализован чат? А именно "ListView" с сообщениями. Допустим БД SQLlite с сообщениями (текст, ссылки на картинки и звук и т.п.), звук и... подробнее

Показать сообщение отдельно
CoolMind
419 / 402 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
07.04.2016, 17:45  [ТС]
Только после прочтения статьи https://tech.yandex.ru/maps/jsbox/2....on_carousel_21 понял, как меняются макеты кластера и "балуна" одновременно. Впрочем, там ещё много всего можно поделать. Например, вид значка в зависимости от условия.
Кликните здесь для просмотра всего текста

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
        var myMap;
 
        ymaps.ready(init);
 
        // Создание экземпляра карты.
        function init(){
            myMap = new ymaps.Map("map", { // ID блока с картой.
                center: [55.76, 37.64],
                zoom: 14,
                controls: ["default","routeEditor"]
            });
 
            loadBalloons();
        }
 
        function loadBalloons(){
            var array = [
                {
                    id : 101,
                    coordinates : [56.023, 36.988],
                    name : 'Имя 1',
                    address : 'Адрес 1',
                    period : '10:00 - 12:00'
                },
                {
                    id : 102,
                    coordinates : [56.025, 36.981],
                    name : 'Имя 2',
                    address : 'Адрес 2',
                    period : '12:00 - 15:00'
                },
                {
                    id : 103,
                    coordinates : [56.020, 36.981],
                    name : 'Имя 3',
                    address : 'Адрес 3',
                    period : '15:00 - 18:00'
                },
                {
                    id : 104,
                    coordinates : [56.021, 36.983],
                    name : 'Имя 4',
                    address : 'Адрес 4',
                    period : '15:00 - 18:00'
                },
                {
                    id : 105,
                    coordinates : [56.027, 36.987],
                    name : 'Имя 5',
                    address : 'Адрес 5',
                    period : '15:00 - 18:00'
                }
            ];
 
            // Кластеризация.
            var myGeoObjects = [];
 
            for (var i = 0; i < array.length; i++) {
                var item = array[i];
                myGeoObjects[i] = new ymaps.GeoObject({
                    geometry: {
                        type: "Point",
                        coordinates: item.coordinates
                    },
                    properties: {
                        name: item.name,
                        address: item.address,
                        period: item.period,
                        balloonContentBody: '<h3>' + item.name + '</h3>'
                            + '<i>Время доставки: ' + item.period + '</i>'
                            + '<p>Адрес: ' + item.address + '</p>'
                    }
                });
            }
 
            // Макет кластера.
            var myBalloonLayout = ymaps.templateLayoutFactory.createClass(
                '<h3>$[properties.name]</h3>'
                + '<p>Время доставки: $[properties.period]</p>'
                + '<p>Адрес: $[properties.address|неизвестно]</p>'
            );
 
            var myClusterer = new ymaps.Clusterer({
                // Отображаем информацию об объектах вместо приближения.
                clusterDisableClickZoom: true,
                clusterOpenBalloonOnClick: true,
                // Устанавливаем стандартный макет балуна кластера "Карусель".
                clusterBalloonContentLayout: 'cluster#balloonCarousel',
                // Устанавливаем собственный макет.
                clusterBalloonItemContentLayout: myBalloonLayout,
                // Устанавливаем режим открытия балуна.
                // В данном примере балун никогда не будет открываться в режиме панели.
                clusterBalloonPanelMaxMapArea: 0,
                // Устанавливаем размеры макета контента балуна (в пикселях).
                clusterBalloonContentLayoutWidth: 200,
                clusterBalloonContentLayoutHeight: 130,
                // Устанавливаем максимальное количество элементов в нижней панели на одной странице
                clusterBalloonPagerSize: 5
                // Настройка внешего вида нижней панели.
                // Режим marker рекомендуется использовать с небольшим количеством элементов.
                // clusterBalloonPagerType: 'marker',
                // Можно отключить зацикливание списка при навигации при помощи боковых стрелок.
                // clusterBalloonCycling: false,
                // Можно отключить отображение меню навигации.
                // clusterBalloonPagerVisible: false
            });
            myClusterer.add(myGeoObjects);
            myMap.geoObjects.add(myClusterer);
 
            myMap.setBounds(myMap.geoObjects.getBounds(), {checkZoomRange:true}).then(function(){
                if(myMap.getZoom() > 12) myMap.setZoom(12);
            });
        }

Здесь есть небольшая разница между видом кластера и "балуна".
0
Миниатюры
YandexMapKit vs Yandex  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru