การจับคู่แผนที่

ชั้นเรียนสาธารณะ MapFragment ขยาย Fragment

คอมโพเนนต์แผนที่ในแอป ส่วนย่อยนี้เป็นวิธีที่ง่ายที่สุดในการวางแผนที่ในแอปพลิเคชัน โดยเป็น Wrapper เรียกดูแผนที่เพื่อจัดการกับความต้องการที่จำเป็นของวงจรโดยอัตโนมัติ การเป็นส่วนย่อย สามารถเพิ่มคอมโพเนนต์นี้ลงในไฟล์เลย์เอาต์ของกิจกรรมได้ง่ายๆ ด้วย XML ที่ด้านล่าง

 <fragment
    class="com.google.android.libraries.maps.MapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
ต้องได้ GoogleMap โดยใช้ getMapAsync(OnMapReadyCallback) ชั้นเรียนนี้ เริ่มต้นระบบแผนที่และมุมมองโดยอัตโนมัติ

คุณสามารถนำมุมมองออกเมื่อมีการเรียกเมธอด onDestroyView() ของ MapFragment และ ตั้งค่าตัวเลือก useViewLifecycleInFragment(boolean) แล้ว เมื่อเกิดกรณีนี้ขึ้น MapFragment ไม่สามารถใช้ได้อีกจนกว่าจะมีการสร้างมุมมองใหม่อีกครั้งในภายหลังเมื่อ มีการเรียกเมธอด onCreateView(LayoutInflater, ViewGroup, Bundle)

วัตถุที่ได้รับจาก GoogleMap จะเชื่อมโยงกับมุมมอง เป็นสิ่งสำคัญ เพื่อไม่ให้ยึดติดกับวัตถุ (เช่น Marker) เกินกว่า ตลอดอายุการใช้งาน มิฉะนั้นจะทำให้หน่วยความจำรั่วไหลเนื่องจากปล่อยมุมมองไม่ได้

ใช้คลาสนี้ก็ต่อเมื่อคุณกำหนดเป้าหมายเป็น API 12 ขึ้นไปเท่านั้น หรือใช้ SupportMapFragment โดยการเพิ่มไลบรารีการสนับสนุนของ Android ในเส้นทางบิลด์ของคุณ

คู่มือนักพัฒนา

สำหรับข้อมูลเพิ่มเติม โปรดอ่าน Google Maps SDK สำหรับ Android สำหรับนักพัฒนาซอฟต์แวร์

สรุปค่าคงที่ที่รับช่วงมา

ข้อมูลสรุปของเครื่องมือสร้างแบบสาธารณะ

MapFragment()
สร้างส่วนย่อยแผนที่

ข้อมูลสรุปของเมธอดสาธารณะ

เป็นโมฆะ
getMapAsync(OnMapReadyCallback callback)
ตั้งค่าออบเจ็กต์ Callback ซึ่งจะทริกเกอร์เมื่ออินสแตนซ์ GoogleMap พร้อม
คงที่ MapFragment
newInstance(ตัวเลือก GoogleMapOptions)
สร้างส่วนย่อยแผนที่ตามตัวเลือกที่ระบุ
คงที่ MapFragment
newInstance()
สร้างส่วนย่อยแผนที่โดยใช้ตัวเลือกเริ่มต้น
เป็นโมฆะ
onActivityCreated(แพ็กเกจที่บันทึกไว้InstanceState)
เป็นโมฆะ
onAttach(กิจกรรมกิจกรรม)
เป็นโมฆะ
onConfigurationChanged(การกำหนดค่า)
เป็นโมฆะ
onCreate(Bundle savedInstanceState)
ดู
onCreateView(เครื่องเติมอากาศ LayoutInflater, คอนเทนเนอร์ ViewGroup, แพ็กเกจ savedInstanceState)
เป็นโมฆะ
เป็นโมฆะ
รอบชิงชนะเลิศ เป็นโมฆะ
onEnterAmbient(แพ็กเกจแอมเบียนท์)
คุณต้องเรียกใช้เมธอดนี้จากเมธอดที่เกี่ยวข้องของ WearableActivity ระดับบนสุด
รอบชิงชนะเลิศ เป็นโมฆะ
onExitAmbient()
คุณต้องเรียกใช้เมธอดนี้จากเมธอดที่เกี่ยวข้องของ WearableActivity ระดับบนสุด
เป็นโมฆะ
onInflate(กิจกรรมกิจกรรม, แอตทริบิวต์ AttributeSet, Bundle savedInstanceState)
แยกวิเคราะห์แอตทริบิวต์ระหว่างการเพิ่มพื้นที่จากลำดับชั้นการดูลงในอาร์กิวเมนต์ที่เราจัดการ
เป็นโมฆะ
เป็นโมฆะ
เป็นโมฆะ
เป็นโมฆะ
onSaveInstanceState(แพ็กเกจ outState)
ระบุ Bundle เพื่อจัดเก็บสถานะของ Fragment ก่อนจะถูกทำลาย
เป็นโมฆะ
เป็นโมฆะ
onStop()
เป็นโมฆะ
setArguments(อาร์กิวเมนต์กลุ่ม)

สรุปวิธีการที่รับมา

ผู้รับเหมาก่อสร้าง

สาธารณะ MapFragment ()

สร้างส่วนย่อยแผนที่ เครื่องมือสร้างนี้พร้อมใช้งานแบบสาธารณะสำหรับเครื่องเติมอากาศเท่านั้น ใช้ newInstance() เพื่อสร้าง MapFragment แบบเป็นโปรแกรม

วิธีการสาธารณะ

สาธารณะ เป็นโมฆะ getMapAsync (Callback OnMapReadyCallback)

ตั้งค่าออบเจ็กต์ Callback ซึ่งจะทริกเกอร์เมื่ออินสแตนซ์ GoogleMap พร้อม

โปรดทราบว่า

  • ต้องเรียกใช้เมธอดนี้จากเทรดหลัก
  • ระบบจะดำเนินการ Callback ในเทรดหลัก
  • ในกรณีที่ไม่ได้ติดตั้งบริการ Google Play ไว้ในอุปกรณ์ของผู้ใช้ จะไม่มีการเรียกใช้ Callback จนกว่าผู้ใช้จะติดตั้ง
  • ในบางกรณีที่ไม่เกิดขึ้นบ่อย ซึ่ง GoogleMap ถูกทำลายในทันทีหลังการสร้าง ไม่มีการทริกเกอร์ Callback
  • ออบเจ็กต์ GoogleMap ที่ได้จาก Callback ต้องไม่เป็นค่าว่าง

พารามิเตอร์
Callback ออบเจ็กต์ Callback ที่จะถูกทริกเกอร์เมื่อแผนที่พร้อมใช้งาน

สาธารณะ คงที่ MapFragment newInstance (ตัวเลือก GoogleMapOptions)

สร้างส่วนย่อยแผนที่ตามตัวเลือกที่ระบุ

พารามิเตอร์
ตัวเลือก

สาธารณะ คงที่ MapFragment newInstance ()

สร้างส่วนย่อยแผนที่โดยใช้ตัวเลือกเริ่มต้น

สาธารณะ เป็นโมฆะ onActivityCreated (Bundle savedInstanceState)

พารามิเตอร์
savedInstanceState

สาธารณะ เป็นโมฆะ onAttach (กิจกรรมกิจกรรม)

พารามิเตอร์
กิจกรรม

สาธารณะ เป็นโมฆะ onConfigurationChanged (การกำหนดค่า)

พารามิเตอร์
การกำหนดค่า

สาธารณะ เป็นโมฆะ onCreate (Bundle savedInstanceState)

พารามิเตอร์
savedInstanceState

สาธารณะ ดู onCreateView (เครื่องเป่าลม LayoutInflater, คอนเทนเนอร์ ViewGroup, แพ็กเกจ savedInstanceState)

พารามิเตอร์
เครื่องเติมลม
คอนเทนเนอร์
savedInstanceState

สาธารณะ เป็นโมฆะ onDestroy ()

สาธารณะ เป็นโมฆะ onDestroyView ()

สาธารณะ รอบชิงชนะเลิศ เป็นโมฆะ onEnterAmbient (รายละเอียดแอมเบียนท์ของแพ็กเกจ)

คุณต้องเรียกใช้เมธอดนี้จากเมธอดที่เกี่ยวข้องของ WearableActivity ระดับบนสุด

พารามิเตอร์
ambientDetails

สาธารณะ รอบชิงชนะเลิศ เป็นโมฆะ onExitAmbient ()

คุณต้องเรียกใช้เมธอดนี้จากเมธอดที่เกี่ยวข้องของ WearableActivity ระดับบนสุด

สาธารณะ เป็นโมฆะ onInflate (กิจกรรมกิจกรรม, แอตทริบิวต์ AttributeSet, Bundle savedInstanceState)

แยกวิเคราะห์แอตทริบิวต์ระหว่างการเพิ่มพื้นที่จากลำดับชั้นการดูลงในอาร์กิวเมนต์ที่เราจัดการ

พารามิเตอร์
กิจกรรม
attrs
savedInstanceState

สาธารณะ เป็นโมฆะ onLowMemory ()

สาธารณะ เป็นโมฆะ onPause ()

สาธารณะ เป็นโมฆะ onResume ()

สาธารณะ เป็นโมฆะ onSaveInstanceState (กลุ่ม OutState)

ระบุ Bundle เพื่อจัดเก็บสถานะของ Fragment ก่อนจะถูกทำลาย ช่วย สามารถดึงข้อมูลในภายหลังเมื่อมีการเรียก onCreate(Bundle) อีกครั้ง

พารามิเตอร์
outState

สาธารณะ เป็นโมฆะ onStart ()

สาธารณะ เป็นโมฆะ onStop ()

สาธารณะ เป็นโมฆะ setArguments (อาร์กิวเมนต์กลุ่ม)

พารามิเตอร์
อาร์กิวเมนต์