
নিম্নলিখিত কোড নমুনাটি addMarker মেথড কল করে একটি 3D ম্যাপে কীভাবে একটি সাধারণ মার্কার যোগ করতে হয় তা দেখায়। এই কোড নমুনাটি ব্যবহার করতে, আপনার অ্যান্ড্রয়েড স্টুডিও প্রজেক্টে একটি সাধারণ 3D ম্যাপ সেট আপ করার জন্য `Setup` এবং `Add a 3D map to your app`- এর নির্দেশাবলী অনুসরণ করুন। তারপর, MainActivity.kt ফাইলে নিম্নলিখিত কোডটি যোগ করুন:
// Add imports
import com.google.android.gms.maps3d.model.latLngAltitude
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setMapMode(Map3DMode.SATELLITE)
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-তে কোনো পরিবর্তন করতে চান (যেমন একটি টোস্ট মেসেজ দেখানো), তাহলে আপনাকে অবশ্যই মেইন থ্রেডে যেতে হবে। কোটলিনের ক্ষেত্রে, আপনি lifecycleScope.launch(Dispatchers.Main) ব্যবহার করে এটি করতে পারেন।