بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

مسیر یابی در Google Maps

مدیریت گفتگو
Delta Soft ™ 9 سال پیش
آخرین تغییر: 9 سال پیش

سلام دوستان عزیز

 

من یک برنامه میخوام بنویسم که قراره چند مارکر روی نقشه نشون داده بشه و اگر کاربر هر یک از این مارکر ها رو انتخاب کرد مسیر حرکت از نقطه ای که کاربر هست تا مارکر انتخاب شده رو نشون بده.

من قسمت مارکر ها رو نوشتم ولی مسیر یابی رو نتونستم کاری کنم !

لطفا راهنمایی کنید

با تشکر

نظرات

alireza 9 سال پیش
سلام دوست عزیز منم تو همین مرحله گیر کردم میخواستم ببینم ایا شما کد رو پیدا کردید یا خیر
سالار جلالی 9 سال پیش
سلام دوست عزیز من میتونم نمونه کد رو براتون بفرستم . ۰۹۳۳۲۶۷۲۱۰۰ با این شماره در تلگرام هستم. اونجا پیام بدین در خدمتتون هستم

پاسخ‌ها 1

مشاهده پاسخ صحیح
سالار جلالی 9 سال پیش

 پاسخ صحیح

اول این لایبرری رو به پروژهتون اضافه کنید

compile 'com.github.jd-alexander:library:1.1.0'

بعد  کلاسی که کد های نقشتون هست رو از RoutingListener ایمپلیمنت کنید و متد های مربوزطشو بسازید

بعد برای مشخص کردن نقاطی که مد نظرتونه میتونید از قطعه کد زیر استفاده کنید.

   start = new LatLng(18.015365, -77.499382);
        waypoint= new LatLng(18.01455, -77.499333);
        end = new LatLng(18.012590, -77.500659);

        Routing routing = new Routing.Builder()
                    .travelMode(Routing.TravelMode.WALKING)
                    .withListener(this)
                    .waypoints(start, waypoint, end)
                    .build();
        routing.execute();

در آخر هم برای رسم مسیر روی نقشه در متد onRoutingSuccess از کد زیر استفاده میکنید

List<Polyline> polylines = new ArrayList<>();
//add route(s) to the MapsActivity.
for (int i = 0; i < route.size(); i++) {
//In case of more than 5 alternative routes
PolylineOptions polyOptions = new PolylineOptions();
polyOptions.color(R.color.colorPrimary);
polyOptions.width(10 + i * 3);
polyOptions.addAll(route.get(i).getPoints());
Polyline polyline = mMap.addPolyline(polyOptions);
polylines.add(polyline);}

با استفاده از این کتابخونه میتونید مسر رو به متر و زمان رسیدن به ثانیه و یه سری اطلاعات دیگه رو هم به دست بیارید.

در صورتی که سوالی داشتین میتونین با شماره ۰۹۳۳۲۶۷۲۱۰۰ در تلگرام ارتباط بگیرین در خدمتتون هستم

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .