คลาสที่มีวิธีสร้างวัตถุ CameraUpdate
ที่เปลี่ยนกล้องของแผนที่
หากต้องการแก้ไขกล้องของแผนที่ ให้เรียก animateCamera(CameraUpdate)
, animateCamera(CameraUpdate, GoogleMap.CancelableCallback)
หรือ moveCamera(CameraUpdate)
โดยใช้ออบเจ็กต์ CameraUpdate
ที่สร้างด้วยคลาสนี้
ตัวอย่างเช่น หากต้องการซูมเข้าในแผนที่ คุณสามารถใช้โค้ดต่อไปนี้
GoogleMap map = ...;
map.animateCamera(CameraUpdateFactory.zoomIn());
ก่อนที่จะใช้เมธอดใดๆ จากชั้นเรียนนี้ คุณต้องทำอย่างใดอย่างหนึ่งต่อไปนี้เพื่อให้ เริ่มต้นคลาสนี้:
- รอให้
GoogleMap
พร้อมใช้งานจากMapFragment
หรือMapView
ที่คุณเพิ่มไว้ในแอปพลิเคชัน คุณสามารถขอรับGoogleMap
โดยการเรียกgetMapAsync()
และรอการเรียกกลับของonMapReady(GoogleMap map)
- โทรมาที่
initialize(Context)
ตราบใดที่ไม่มีการส่งGooglePlayServicesNotAvailableException
ชั้นเรียนนี้ก็จะทำงานอย่างถูกต้อง ได้เริ่มต้นแล้ว
คู่มือนักพัฒนา
สำหรับข้อมูลเพิ่มเติม โปรดอ่านกล้องและมุมมอง คู่มือนักพัฒนาซอฟต์แวร์
ข้อมูลสรุปของเมธอดสาธารณะ
คงที่ CameraUpdate |
newCameraPosition(ตำแหน่งกล้องCameraPosition)
แสดงผล
CameraUpdate ที่ย้ายกล้องไปยัง CameraPosition ที่ระบุ |
คงที่ CameraUpdate |
newLatLng(LatLng latLng)
แสดง
CameraUpdate ที่ย้ายกึ่งกลางของหน้าจอไปยังละติจูดและลองจิจูด
ที่ระบุโดยออบเจ็กต์ LatLng |
คงที่ CameraUpdate |
newLatLngBounds(ขอบเขต LatLngBounds, ความกว้าง Int, ความสูง Int, ระยะห่างจากขอบของ int)
แสดง
CameraUpdate ที่เปลี่ยนรูปแบบกล้องตามที่ระบุ
ขอบเขตละติจูด/ลองจิจูดจะอยู่กึ่งกลางบนหน้าจอภายในกรอบขอบเขตของขนาดที่ระบุ
ที่ระดับการซูมที่ดีที่สุดเท่าที่จะเป็นไปได้ |
คงที่ CameraUpdate |
newLatLngBounds(ขอบเขต LatLngBounds, ระยะห่างจากขอบด้านใน)
แสดง
CameraUpdate ที่เปลี่ยนรูปแบบกล้องตามที่ระบุ
ขอบเขตละติจูด/ลองจิจูดจะอยู่ตรงกลางของหน้าจอในระดับการซูมที่ดีที่สุดเท่าที่เป็นไปได้ |
คงที่ CameraUpdate |
newLatLngZoom(LatLng latLng, การซูมแบบลอยตัว)
แสดง
CameraUpdate ที่ย้ายกึ่งกลางของหน้าจอไปยังละติจูดและลองจิจูด
ที่ระบุโดยออบเจ็กต์ LatLng และย้ายไปยังระดับการซูมที่กำหนด |
คงที่ CameraUpdate |
scrollBy(Flo xPixel, Float yPixel)
แสดง
CameraUpdate ที่เลื่อนกล้องไปบนแผนที่ โดยเปลี่ยนจุดศูนย์กลางของ
ดูตามจำนวนพิกเซลที่ระบุในทิศทาง x และ y |
คงที่ CameraUpdate |
zoomBy(จำนวนทศนิยม การเน้นจุด)
แสดงผล
CameraUpdate ที่เลื่อนระดับการซูมของมุมมองกล้องปัจจุบัน |
คงที่ CameraUpdate |
zoomBy(จำนวนทศนิยม)
แสดงผล
CameraUpdate ที่เลื่อนระดับการซูมของมุมมองกล้องปัจจุบัน |
คงที่ CameraUpdate |
zoomIn()
แสดงค่า
CameraUpdate ที่ซูมเข้าในแผนที่โดยเลื่อนความสูงของมุมมองให้ใกล้ขึ้น
กับพื้นผิวโลก |
คงที่ CameraUpdate |
zoomOut()
แสดงค่า
CameraUpdate ที่ซูมออกในแผนที่โดยการย้ายความสูงของมุมมอง
ที่อยู่ห่างจากพื้นผิวโลก |
คงที่ CameraUpdate |
zoomTo(ซูมแบบลอย)
แสดงผล
CameraUpdate ที่ย้ายมุมมองของกล้องไปยังระดับการซูมที่ต้องการ |
สรุปวิธีการที่รับมา
วิธีการสาธารณะ
สาธารณะ คงที่ CameraUpdate newCameraPosition (CameraPositionตำแหน่งกล้อง)
แสดงผล CameraUpdate
ที่ย้ายกล้องไปยัง CameraPosition
ที่ระบุ ใน
ซึ่งจะสร้างการแปลงจากละติจูดของวัตถุ CameraPosition
ลองจิจูด ระดับการซูม ทิศทางการเอียง และการเอียง
พารามิเตอร์
cameraPosition |
---|
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate newLatLng (LatLngละติจูด)
แสดง CameraUpdate
ที่ย้ายกึ่งกลางของหน้าจอไปยังละติจูดและลองจิจูด
ที่ระบุโดยออบเจ็กต์ LatLng
การดำเนินการนี้จะตั้งศูนย์กลางกล้องไว้ที่วัตถุ LatLng
พารามิเตอร์
latLng | ออบเจ็กต์ LatLng ที่มีละติจูดและลองจิจูดที่ต้องการ |
---|
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate newLatLngBounds (LatLngBounds ขอบเขต, ความกว้าง int, ความสูง, ระยะห่างจากขอบของ int)
แสดง CameraUpdate
ที่เปลี่ยนรูปแบบกล้องตามที่ระบุ
ขอบเขตละติจูด/ลองจิจูดจะอยู่กึ่งกลางบนหน้าจอภายในกรอบขอบเขตของขนาดที่ระบุ
ที่ระดับการซูมที่ดีที่สุดเท่าที่จะเป็นไปได้ คุณสามารถระบุระยะห่างจากขอบเพิ่มเติมเพื่อจำกัดเพิ่มเติม
ขนาดของกรอบล้อมรอบ CameraUpdate
ที่แสดงผลมีระยะ 0 และมีการเอียง
0
ซึ่งคุณจะใช้CameraUpdate
ได้ ซึ่งต่างจาก newLatLngBounds(LatLngBounds, int)
แสดงผลโดยวิธีการนี้เพื่อเปลี่ยนกล้องก่อนขั้นตอนการจัดวางของแผนที่ เนื่องจาก
อาร์กิวเมนต์จะระบุขนาดที่ต้องการของกรอบล้อมรอบ
พารามิเตอร์
ขอบเขต | ด้านที่พอดีกับกรอบล้อมรอบ |
---|---|
ความกว้าง | ความกว้างของกรอบพื้นที่เป็นพิกเซล (px) |
ส่วนสูง | ความสูงของกล่องที่ล้อมรอบในหน่วยพิกเซล (px) |
padding | การจำกัดขนาดเพิ่มเติม (เป็นพิกเซล) ของกรอบล้อมรอบ |
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate newLatLngBounds (LatLngBounds, ระยะห่างจากขอบภายใน)
แสดง CameraUpdate
ที่เปลี่ยนรูปแบบกล้องตามที่ระบุ
ขอบเขตละติจูด/ลองจิจูดจะอยู่ตรงกลางของหน้าจอในระดับการซูมที่ดีที่สุดเท่าที่เป็นไปได้ คุณสามารถ
ระบุระยะห่างจากขอบ เพื่อใส่กรอบจากขอบของมุมมองแผนที่ ผลลัพธ์
CameraUpdate
มีทิศทางเป็น 0 และการเอียงเป็น 0
ห้ามเปลี่ยนกล้องหลังจากอัปเดตกล้องนี้จนกว่าแผนที่ผ่านการปรับสภาพ (ใน
เพื่อให้วิธีการนี้ระบุกรอบล้อมรอบและระดับการซูมที่เหมาะสมได้อย่างถูกต้อง
แผนที่ต้องมีขนาด) ไม่เช่นนั้นระบบจะส่ง IllegalStateException
ไม่ใช่
เพียงพอสำหรับแผนที่พร้อมใช้งาน มุมมองที่มีแผนที่จะต้อง
จนถึงขนาดที่กำหนด หากคุณไม่แน่ใจว่า
ให้ใช้ newLatLngBounds(LatLngBounds, int, int, int)
แทนและระบุ
ของแผนที่ด้วยตัวเอง
พารามิเตอร์
ขอบเขต | ขนาดพอดีกับหน้าจอ |
---|---|
padding | เว้นวรรค (เป็นพิกเซล) เพื่อออกระหว่างขอบของกรอบและขอบมุมมอง ช่วงเวลานี้ จะใช้กับทั้ง 4 ด้านของกรอบล้อมรอบ |
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate newLatLngZoom (LatLng ละติจูด/ลองจิจูด, การซูมแบบลอยตัว)
แสดง CameraUpdate
ที่ย้ายกึ่งกลางของหน้าจอไปยังละติจูดและลองจิจูด
ที่ระบุโดยออบเจ็กต์ LatLng
และย้ายไปยังระดับการซูมที่กำหนด
พารามิเตอร์
latLng | ออบเจ็กต์ LatLng ที่มีละติจูดและลองจิจูดที่ต้องการ |
---|---|
zoom | ระดับการซูมที่ต้องการในช่วง 2.0 ถึง 21.0 ค่าที่ต่ำกว่าช่วงนี้คือ จะตั้งค่าเป็น 2.0 และค่าที่มากกว่าคือ 21.0 เพิ่มค่าเพื่อซูมเข้า ไม่ใช่ทั้งหมด จะมีชิ้นส่วนต่างๆ ในระดับการซูมที่ใหญ่ที่สุด |
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate scrollBy (Flo xPixel, Flo yPixel)
แสดง CameraUpdate
ที่เลื่อนกล้องไปบนแผนที่ โดยเปลี่ยนจุดศูนย์กลางของ
ดูตามจำนวนพิกเซลที่ระบุในทิศทาง x และ y
ตัวอย่าง
- หาก xPixel = 5 และ yPixel = 0 ระบบจะเลื่อนไปทางขวาด้วยการเลื่อนกล้องเพื่อให้ ดูเหมือนว่าแผนที่เคลื่อนไปทางซ้าย 5 พิกเซล
- หาก xPixel = 0 และ yPixel = 5 ระบบจะเลื่อนลงโดยย้ายกล้องเพื่อให้ ดูเหมือนจะเคลื่อนไปด้านบน 5 พิกเซล
การเลื่อนจะสัมพันธ์กับการวางแนวปัจจุบันของกล้อง เช่น หากกล้อง ตั้ง 90 องศา จากนั้นทิศตะวันออกคือ "ขึ้น" และการเลื่อนไปทางขวาจะเลื่อนกล้องไปทางทิศใต้
พารามิเตอร์
xPixel | จำนวนพิกเซลที่จะเลื่อนในแนวนอน ค่าบวกจะย้ายกล้องไปที่ ด้านขวาตามการวางแนวในปัจจุบัน ค่าลบจะย้ายกล้องไปที่ ด้านซ้ายตามการวางแนวในปัจจุบัน |
---|---|
yPixel | จำนวนพิกเซลที่จะเลื่อนในแนวตั้ง ค่าบวกจะทำให้กล้องขยับ ลงตามการวางแนวในปัจจุบัน ค่าลบทำให้กล้องขยับ ขึ้นตามการวางแนวในปัจจุบัน |
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate zoomBy (จำนวนลอยตัว จุดโฟกัส)
แสดงผล CameraUpdate
ที่เลื่อนระดับการซูมของมุมมองกล้องปัจจุบัน
จุดที่ระบุโดยโฟกัสจะยังคงเดิม (นั่นคือจะสัมพันธ์กับละติจูด/ลองจิจูดเดียวกัน) ก่อนและหลังกระบวนการซูม)
วิธีการนี้แตกต่างจาก zoomTo(float)
ในส่วนที่การซูมสัมพันธ์กับ
กล้อง
ตัวอย่างเช่น หาก LatLng
(11.11, 22.22) อยู่ที่ตำแหน่งหน้าจอ (23,
45) หลังจากเรียกใช้วิธีนี้ด้วยจำนวนการซูมและ LatLng
นี้ ตำแหน่งหน้าจอ
ของ LatLng
นี้จะยังคงเป็น (23, 45)
พารามิเตอร์
จำนวนเงิน | เพื่อเปลี่ยนระดับการซูม ค่าบวกหมายถึงการซูมเข้าใกล้ พื้นผิวโลกแต่ค่าลบหมายถึงการซูมออกจากพื้นผิว Earth |
---|---|
โฟกัส | ตำแหน่งพิกเซลบนหน้าจอที่จะยังคงอยู่หลังจากขั้นตอนการซูม ละติจูด/ลองจิจูดซึ่งอยู่ที่ตำแหน่งพิกเซลดังกล่าวก่อนที่จะย้ายกล้องจะยังคงเดิม หลังจากขยับกล้อง |
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate zoomBy (จำนวนทศนิยม)
แสดงผล CameraUpdate
ที่เลื่อนระดับการซูมของมุมมองกล้องปัจจุบัน
วิธีการนี้แตกต่างจาก zoomTo(float)
ในส่วนที่การซูมสัมพันธ์กับ
กล้อง
พารามิเตอร์
จำนวนเงิน | เพื่อเปลี่ยนระดับการซูม ค่าบวกหมายถึงการซูมเข้าใกล้ พื้นผิวโลกแต่ค่าลบหมายถึงการซูมออกจากพื้นผิว Earth |
---|
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate zoomIn ()
แสดงค่า CameraUpdate
ที่ซูมเข้าในแผนที่โดยเลื่อนความสูงของมุมมองให้ใกล้ขึ้น
กับพื้นผิวโลก จำนวนการซูมที่เพิ่มขึ้นคือ 1.0
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate zoomOut ()
แสดงค่า CameraUpdate
ที่ซูมออกในแผนที่โดยการย้ายความสูงของมุมมอง
ที่อยู่ห่างจากพื้นผิวโลก ระดับการซูมที่เพิ่มขึ้นคือ -1.0
การคืนสินค้า
CameraUpdate
ที่มีการเปลี่ยนรูปแบบ
สาธารณะ คงที่ CameraUpdate zoomTo (ซูมแบบลอย)
แสดงผล CameraUpdate
ที่ย้ายมุมมองของกล้องไปยังระดับการซูมที่ต้องการ
พารามิเตอร์
zoom | ระดับการซูมที่ต้องการในช่วง 2.0 ถึง 21.0 ค่าที่ต่ำกว่าช่วงนี้คือ จะตั้งค่าเป็น 2.0 และค่าที่มากกว่าคือ 21.0 เพิ่มค่าเพื่อซูมเข้า ไม่ใช่ทั้งหมด จะมีชิ้นส่วนต่างๆ ในระดับการซูมที่ใหญ่ที่สุด |
---|