নিচের কোডের স্যাম্পেল থেকে বোঝা যায় যে কীভাবে
addMarker
মেথড কল করে 3D ম্যাপে বেসিক মার্কার যোগ করতে হয়। এই কোড স্যাম্পেল ব্যবহার করতে, সেট-আপ এবং আপনার অ্যাপে 3D ম্যাপ যোগ করুন
লিঙ্কে দেওয়া নির্দেশাবলী অনুসরণ করে
বেসিক 3D ম্যাপ সহ Android Studio প্রোজেক্ট সেট-আপ করুন। তারপর, MainActivity.kt ফাইলে
নিম্নলিখিত কোড যোগ করুন:
// Add imports
import com.google.android.gms.maps3d.model.Map3DMode
import com.google.android.gms.maps3d.model.latLngAltitude
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setMapMode(Map3DMode.HYBRID)
googleMap3D.setCamera(
camera {
center = latLngAltitude {
latitude = 52.51974795
longitude = 13.40715553
altitude = 150.0
}
heading = 252.7
tilt = 79.0
range = 1500.0
}
)
// Add a marker using absolute altitude positioning
googleMap3D.addMarker(markerOptions {
position = latLngAltitude {
latitude = 52.519605780912585
longitude = 13.406867190588198
altitude = 150.0
}
label = "Absolute (150m)"
altitudeMode = AltitudeMode.ABSOLUTE
isExtruded = true
isDrawnWhenOccluded = true
collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL
})
মার্কার ক্লিক ইভেন্ট শুনুন
মার্কারের উপর ক্লিক ইভেন্ট শুনতে, মার্কার অবজেক্টে setClickListener কল করুন। নিচের উদাহরণে দেখানো হয়েছে যে কীভাবে কোনও
মার্কারে ক্লিক লিসনার সেট করতে হয়:
marker.setClickListener {
lifecycleScope.launch(Dispatchers.Main) {
Toast.makeText(this@MarkersActivity, "Clicked on marker: ${marker.label}", Toast.LENGTH_SHORT)
.show()
}
}
মনে রাখবেন, ক্লিক হ্যান্ডলারটি মূল (বা UI) থ্রেডে রান করে না। আপনি যদি
UI-তে পরিবর্তন করতে চান (যেমন টোস্ট মেসেজ দেখানো), তাহলে আপনাকে অবশ্যই
Main থ্রেডে সুইচ করতে হবে। Kotlin-এর জন্য, আপনি
lifecycleScope.launch(Dispatchers.Main) ব্যবহার করে এটি করতে পারেন।