يؤدي أي تغيير في مستوى التكبير / التصغير إلى إعادة تشغيل جميع علاماتي على خريطة جوجل الخاصة بي

StackOverflow https://stackoverflow.com//questions/9612360

سؤال

أي تغيير في مستوى التكبير يؤدي جميع العلامات إلى الظهور على الخريطة التي كانت على الخريطة في أي وقت منذ تحميل الصفحة الأخير. هذا صحيح ما إذا كان تغيير مستوى التكبير / التصغير بسبب استدعاء SetZoom () في التعليمات البرمجية الخاصة بي أو لأنني أقوم بتشغيل شريط التمرير Zoom.

لدي عنصر واجهة مستخدم للتحكم في الخريطة مع أزرار لإضافة علامات تتوافق مع فئات مختلفة. لذلك تنقر فوق الزر للمجموعات والخريطة بملء العلامات التي تمثل المجموعات. ثم انقر فوق الزر الأفراد ويتم مسح علامات المجموعات وحذفها وتظهر العلامات الفردية على الخريطة. وهلم جرا مع الفئات الأخرى. ولكن أي تغيير في مستوى التكبير يجعل أي علامات كانت على الخريطة منذ أن تم تحديث الصفحة.

أنا أستخدم markerclustererplus. لا أعرف ما إذا كان هذا سيكون خطأ في markercrationserplus، في رمز Google أو في التعليمات البرمجية الخاصة بي. نأمل أن الأخير. سآخذ وظيفة AddMarkers الخاصة بي أدناه. منذ أن قمت بوضوح وحذف العلامات قبل إضافة علامات جديدة، لا أعرف كيف كان من الممكن أن أعود العلامات السابقة، مما لا يضخ تغيير تغيير التكبير / التصغير: giveacodicetagpre.

أيضا، إذا قمت بتغيير التكبير، فلا تخلص العلامات بعد الآن. إنهم يستمرون فقط في التراكم على الخريطة إذا قمت بالنقر فوق الأزرار لتغيير الفئة. هذا بالتأكيد لا يحدث إذا لم أغير مستوى التكبير / التصغير.

حسب الطلب، وهنا أكثر من الرمز: giveacodicetagpre.

أخيرا وليس آخرا، هنا هي مكتبة markercrationsplus: http://google-maps-utility-library-v3.googlecode.com/svn/tags/markercrationserplus/2.0.9/src/

هل كانت مفيدة؟

المحلول

أنا لا أعرف الكثير عن markercluster ولكن ما يبدو أنه يحدث في كل مرة تسميه وظيفة addraskers الخاص بك، فأنت تقوم بإنشاء علامات جديدة، لكن الشخص القديم لا يتم تدميره أبدا / إزالته، وبالتالي على تغيير تكبير جميع الحالات التي قمت بإنشائهاإعادة رسم علامات لديهم.جرب أسلوب Clearmarkers أو RemorverMarkers طريقة Markercluster وأيضا إنشاء مثيل واحد فقط من علامة MarkerCluster وإعادة استخدامه بدلا من إنشاء واحدة جديدة في كل مرة تقوم فيها Cal AddAmers.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top