اذهب إلى المحتوى
  • 0

جلب بيانات lng, lat لنقطة عند الوقوف عليها في خرائط جوجل - فلاتر

Mohammed Abu Yousef

السؤال

draggable: true,

بعد كتابة هذا السطر، هل هناك من طريقة لأخذ ال lang وال lat للموقع التي يستقر ال marker بعد تغييره، ليتم حفظه بعد ذلك في قاعدة البيانات؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

العلامة لها خاصية onDragEnd. يعطي استخدام خاصية onDragEnd خط عرض وخط طول جديدين.

Marker(
	  onTap: () {
		print('Tapped');
	  },
	  draggable: true,
	  markerId: MarkerId('Marker'),
	  position: LatLng(value.latitude, value.longitude),
	  onDragEnd: ((newPosition) {
		print(newPosition.latitude);
		print(newPosition.longitude);
}))

ثم يمكنك استخدام 

newPosition.latitude
newPosition.longitude

لتخزينهم في قاعدة البيانات.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

حلو جدا، شكرا

كملن سؤال بعد إذنك، هيا ايه أفضل طريقة آخذ بيها الموقع اللي المستخدم بدو يحفظه عندي بالموقع؟

لأنو ممكن يحدده بدون ما يعمل drag ؟

+

وهل أخلي ال marker ظاهر من أول م يفتح الخريطة عشان يحط الموقع؟ ولا أخلي button لما يضغط عليه يظهر ال marker? وهيك يعني؟ ما هي الطريقة المناسبة؟

تم التعديل في بواسطة Mohammed Abu Yousef
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 5 دقائق مضت قال Mohammed Abu Yousef:

حلو جدا، شكرا

العفو , أي سؤال يمكنك طرحه هنا لنتمكن من مساعدتك في حله. 

اقتباس

كملن سؤال بعد إذنك، هيا ايه أفضل طريقة آخذ بيها الموقع اللي المستخدم بدو يحفظه عندي بالموقع؟

لأنو ممكن يحدده بدون ما يعمل drag ؟

ممكن تظهر اله شريط بحث ويقوم بالبحث ثم تحديد مكانه. ثم ممكن تحفظ بيانات موقعه باستخدام sharedPrefrences ثم ترسله في api لينحفظ بداخل قاعدة البيانات. 

اقتباس

وهل أخلي ال marker ظاهر من أول م يفتح الخريطة عشان يحط الموقع؟ ولا أخلي button لما يضغط عليه يظهر ال marker? وهيك يعني؟ ما هي الطريقة المناسبة؟

أي طريقة جيدة ولكن المتبع هو اول ما يفتح الخريطة تقوم بإظهار أخر موقع له تم حفظه. 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 ساعة قال بلال زيادة:

العفو , أي سؤال يمكنك طرحه هنا لنتمكن من مساعدتك في حله. 

ممكن تظهر اله شريط بحث ويقوم بالبحث ثم تحديد مكانه. ثم ممكن تحفظ بيانات موقعه باستخدام sharedPrefrences ثم ترسله في api لينحفظ بداخل قاعدة البيانات. 

أي طريقة جيدة ولكن المتبع هو اول ما يفتح الخريطة تقوم بإظهار أخر موقع له تم حفظه. 

تمام جدا

الآن رجعلي class من نوع LngLat ، كيف أجيب ال longitude وال latitude

- هوا LngLat عبارة عن ايه؟ Class؟ Object؟ Array؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 9 دقائق مضت قال Mohammed Abu Yousef:

تمام جدا

الآن رجعلي class من نوع LngLat ، كيف أجيب ال longitude وال latitude

ممكن ترفق الكود كاملاً هنا أشوف طريقة استخدامك.

اقتباس

- هوا LngLat عبارة عن ايه؟ Class؟ Object؟ Array؟

عبارة عن كلاس. 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 2 دقائق مضت قال بلال زيادة:

ممكن ترفق الكود كاملاً هنا أشوف طريقة استخدامك.

عبارة عن كلاس. 

خلاص بحثت ولقيت الحل، شكرا بجد

وهادا ملخص للي صار

final TextEditingController _langController = TextEditingController();
final TextEditingController _latController = TextEditingController();
LatLng value = LatLng(null, null);

void selected(_value) {
    setState(() {
      value = _value;
      _langController.text = _value.longitude.toString();
      _latController.text = _value.latitude.toString();
      print('long: ' + _langController.text);
      print('lat: ' + _latController.text);
    });
}

void _onAddMarkerButtonPressed() {
    setState(() {
      _markers.add(Marker(
        draggable: true,
        // This marker id can be anything that uniquely identifies each marker.
        markerId: MarkerId(_lastMapPosition.toString()),
        position: _lastMapPosition,
        icon: BitmapDescriptor.defaultMarker,
      ));
      selected(_lastMapPosition);
    });
}

ال DataType بتعت ال longitude وال latitude هيا double وانا كنت بحاول أخزنهم في متغير من نوع String

وشكرا مرة تانية

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال Mohammed Abu Yousef:

خلاص بحثت ولقيت الحل، شكرا بجد

وهادا ملخص للي صار


final TextEditingController _langController = TextEditingController();
final TextEditingController _latController = TextEditingController();
LatLng value = LatLng(null, null);

void selected(_value) {
    setState(() {
      value = _value;
      _langController.text = _value.longitude.toString();
      _latController.text = _value.latitude.toString();
      print('long: ' + _langController.text);
      print('lat: ' + _latController.text);
    });
}

void _onAddMarkerButtonPressed() {
    setState(() {
      _markers.add(Marker(
        draggable: true,
        // This marker id can be anything that uniquely identifies each marker.
        markerId: MarkerId(_lastMapPosition.toString()),
        position: _lastMapPosition,
        icon: BitmapDescriptor.defaultMarker,
      ));
      selected(_lastMapPosition);
    });
}

ال DataType بتعت ال longitude وال latitude هيا double وانا كنت بحاول أخزنهم في متغير من نوع String

وشكرا مرة تانية

طبعا long, lat Double تمام , بالتوفيق

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...