android - فتح InfoWindow تلقائيا عند إضافة علامة جوجل خرائط V2 الروبوت




google-maps-android-api-2 marker (2)

وفقًا لمستندات Google Maps لنظام Android V2 :

تسمح لك نافذة المعلومات بعرض المعلومات للمستخدم عند النقر على أحد العلامات على الخريطة. افتراضيًا ، يتم عرض نافذة المعلومات عندما ينقر المستخدم على علامة إذا كان لدى العلامة مجموعة عناوين. يتم عرض نافذة معلومات واحدة فقط في كل مرة. إذا نقر المستخدم على علامة أخرى ، فسيتم إخفاء النافذة الحالية وسيتم عرض نافذة المعلومات الجديدة. يمكنك إظهار نافذة المعلومات برمجيًا عن طريق استدعاء showInfoWindow () على علامة الهدف. يمكن إخفاء نافذة المعلومات عن طريق استدعاء hideInfoWindow () .

يمكنك عرض نافذة المعلومات مثل هذا:

Marker marker = myMap.addMarker(new MarkerOptions()
                     .position(latLng)
                     .title("Title")
                     .snippet("Snippet")
                     .icon(BitmapDescriptorFactory
                     .fromResource(R.drawable.marker)));

marker.showInfoWindow();

هل هناك طريقة لفتح infowindow تلقائيا عندما نضيف علامة؟ باستخدام هذا الرمز لإضافة العلامة ولكن يتم فتح infowindow فقط عند النقر على العلامة:

myMap.addMarker(new MarkerOptions()
            .position(latLng)
            .title("Title")
            .snippet("Snippet")
            .icon(BitmapDescriptorFactory
                    .fromResource(R.drawable.marker)));

اكتشفتها:

1) استخدام Android SDK Manager والحصول على Google APIs لإصدارات Android التي تريدها (بدء تشغيله من Android Studio ، إنه منفصل عن مدير sdk القديم إذا كنت تستخدم الكسوف من قبل)

2)

  • انتقل إلى "File> هيكل المشروع> SDKs"
  • انقر فوق علامة الجمع وحدد "Android SDK"
  • ستظهر نافذة منبثقة ، انتقل إلى مجلد تثبيت Android Studio وحدد المجلد الفرعي "sdk"
  • ستظهر نافذة منبثقة أخرى: حدد "Google APIs (#. #. #)"

3) في نفس نافذة بنية المشروع: حدد "Android #. #. # Google APIs" ، انقر على تطبيق SDK للمشروع / موافق

4) الآن في ملفات build.gradle الخاصة بك استبدال

android {
    ...
    compileSdkVersion 17
    ...
}

مع

android {
    ...
    compileSdkVersion "Google Inc.:Google APIs:17"
    ...
}

6) إعادة تشغيل Android Studio

هذا ما فعلته لي من أجل google apis 16. إذا كنت لا تزال تواجه مشكلات:

  • انتقل إلى "File> هيكل المشروع> SDKs"
  • حدد واجهة برمجة تطبيقات Google> classpath
  • تأكد من وجود ملفات jar في واجهات برمجة تطبيقات Google (مثل Android Studio / sdk / add-ons / addon-google_apis-google-16 / libs / maps.jar)
  • إذا لم يتم إضافتها يدويًا (كان يجب القيام بذلك من أجل apis 17)
  • إعادة تشغيل Android Studio




android google-maps-android-api-2 marker infowindow