একটি মানচিত্র কনফিগার করুন

প্ল্যাটফর্ম নির্বাচন করুন: অ্যান্ড্রয়েড আইওএস

এই ডকুমেন্টে বর্ণনা করা হয়েছে, কীভাবে অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে (Maps SDK for Android) ব্যবহার করে একটি অ্যান্ড্রয়েড অ্যাপে যুক্ত করা ম্যাপ কনফিগার করতে হয়।

সংক্ষিপ্ত বিবরণ

ম্যাপ সেটিংস কনফিগার করা সহ কিয়োটোর একটি মানচিত্র। আপনার অ্যাপে একটি ম্যাপ যোগ করার পরে, আপনি ম্যাপটির প্রাথমিক এবং রানটাইম সেটিংস কনফিগার করতে পারেন। আপনি ম্যাপ কন্টেইনারটি ( SupportMapFragment বা MapView ) স্ট্যাটিক্যালি নাকি ডাইনামিক্যালি যোগ করেছেন, তার উপর ভিত্তি করে প্রাথমিক সেটিংস কনফিগার করতে হবে। যদি ম্যাপ কন্টেইনারটি স্ট্যাটিক্যালি যোগ করা হয়ে থাকে, তাহলে আপনি লেআউট ফাইলে প্রাথমিক ম্যাপ সেটিংস কনফিগার করতে পারেন। আর যদি এটি ডাইনামিক্যালি যোগ করা হয়ে থাকে, তাহলে আপনি OnCreate কলব্যাকে একটি GoogleMapOptions অবজেক্ট ব্যবহার করে প্রাথমিক সেটিংস কনফিগার করতে পারেন।

ম্যাপ কন্টেইনার যোগ করার বিস্তারিত তথ্যের জন্য, “একটি ম্যাপ যোগ করুন” অংশটি দেখুন।

প্রাথমিক মানচিত্র সেটিংসে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত রয়েছে:

রানটাইমে আপনি onMapReady কলব্যাকে GoogleMap অবজেক্টটি আপডেট করার মাধ্যমে এই সেটিংসগুলো এবং কিছু অতিরিক্ত সেটিংস কনফিগার করতে পারেন। অতিরিক্ত সেটিংসগুলো GoogleMap ক্লাসের মেথডগুলোর মাধ্যমে কনফিগার করা হয়, যেমন ট্র্যাফিক লেয়ার এবং ম্যাপ প্যাডিং কনফিগার করার মেথডগুলো।

উদাহরণ

নীচের উদাহরণ কোড এবং উপরের স্ক্রিনশটে , ম্যাপটি নিম্নলিখিত সেটিংস দিয়ে কনফিগার করা হয়েছে।

প্রাথমিক সেটিংস লেআউট ফাইলে কনফিগার করা হয়:

  • জুম নিয়ন্ত্রণ সক্রিয় করুন।
  • ঘূর্ণন অঙ্গভঙ্গি নিয়ন্ত্রণ সক্রিয় করুন।
  • মানচিত্রের হেলান ৩০-এ সেট করুন।

রানটাইম সেটিংস:

  • ক্যামেরাটি জাপানের কিয়োটো শহরের উপর কেন্দ্রীভূত করুন।
  • হাইব্রিড ম্যাপ টাইপটি সক্রিয় করুন।
  • ট্র্যাফিক লেয়ারটি চালু করুন।

প্রাথমিক সেটিংস

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:uiZoomControls="true"
    map:uiRotateGestures="true"
    map:cameraTilt="30" />
    

রানটাইম সেটিংস

package com.example.mapsetup;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;

public class MainActivity extends AppCompatActivity implements OnMapReadyCallback {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mapFragment.getMapAsync(this);

    }

    // Update the map configuration at runtime.
    @Override
    public void onMapReady(GoogleMap googleMap) {
        // Set the map coordinates to Kyoto Japan.
        LatLng kyoto = new LatLng(35.00116, 135.7681);
        // Set the map type to Hybrid.
        googleMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);
        // Add a marker on the map coordinates.
        googleMap.addMarker(new MarkerOptions()
                .position(kyoto)
                .title("Kyoto"));
        // Move the camera to the map coordinates and zoom in closer.
        googleMap.moveCamera(CameraUpdateFactory.newLatLng(kyoto));
        googleMap.moveCamera(CameraUpdateFactory.zoomTo(15));
        // Display traffic.
        googleMap.setTrafficEnabled(true);

    }
}

শুরু করার আগে

শুরু করার আগে, আপনি নিম্নলিখিত বিকল্পগুলির মাধ্যমে একটি প্রকল্প সেট আপ করতে এবং একটি প্রাথমিক মানচিত্র যোগ করতে পারেন:

  • অ্যান্ড্রয়েড স্টুডিওর জন্য ম্যাপস টেমপ্লেট ব্যবহার করে একটি অ্যাপ তৈরি করুন। ম্যাপস টেমপ্লেট স্বয়ংক্রিয়ভাবে আপনার প্রজেক্ট কনফিগার করে এবং একটি বেসিক ম্যাপ যোগ করে। ম্যাপ কন্টেইনার হিসেবে একটি ফ্র্যাগমেন্ট ব্যবহৃত হয় এবং এটি স্ট্যাটিক্যালি যুক্ত করা হয়। বিস্তারিত জানতে কুইকস্টার্ট দেখুন।

  • এসডিকে-এর জন্য আপনার প্রজেক্টটি ম্যানুয়ালি কনফিগার করুন এবং একটি বেসিক ম্যাপ যোগ করুন । এর মাধ্যমে আপনি যেকোনো অ্যান্ড্রয়েড টেমপ্লেট ব্যবহার করে একটি বিদ্যমান অ্যাপে ম্যাপ যুক্ত করতে পারবেন।

স্থিরভাবে যোগ করার পরে একটি মানচিত্র কনফিগার করুন

আপনার লেআউট ফাইলে ম্যাপটি স্থিরভাবে যোগ করা হলে, সেটির প্রাথমিক অবস্থা কীভাবে নির্ধারণ করতে হয়, তা এই অংশে বর্ণনা করা হয়েছে।

অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে (Maps SDK for Android) একটি SupportMapFragment বা একটি MapView জন্য এক সেট কাস্টম এক্সএমএল (XML) অ্যাট্রিবিউট সংজ্ঞায়িত করে, যা ব্যবহার করে আপনি সরাসরি লেআউট ফাইল থেকে ম্যাপের প্রাথমিক অবস্থা কনফিগার করতে পারেন। নিম্নলিখিত অ্যাট্রিবিউটগুলো সংজ্ঞায়িত করা হয়েছে:

  • mapType — যে ধরনের মানচিত্র প্রদর্শন করা হবে। বৈধ মানগুলো হলো: none , normal , hybrid , satellite এবং terrain

  • cameraTargetLat , cameraTargetLng , cameraZoom , cameraBearing , cameraTilt — ক্যামেরার প্রাথমিক অবস্থান। বিস্তারিত জানতে ক্যামেরা ও ভিউ নির্দেশিকা দেখুন।

  • uiZoomControls , uiCompass — জুম কন্ট্রোল ও কম্পাস প্রদর্শিত হবে কিনা তা নির্দিষ্ট করে। বিস্তারিত জানতে UiSettings দেখুন।

  • uiZoomGestures , uiScrollGestures , uiRotateGestures , uiTiltGestures — নির্দিষ্ট জেসচারগুলো সক্রিয় থাকবে কিনা তা নির্দিষ্ট করে। বিস্তারিত জানতে UiSettings দেখুন।

  • zOrderOnTop — এটি নির্দেশ করে যে ম্যাপ ভিউ-এর সারফেসটি ম্যাপ উইন্ডো, ম্যাপ কন্ট্রোল এবং উইন্ডোর ভেতরের যেকোনো অবজেক্টের উপরে প্রদর্শিত হবে কি না। বিস্তারিত জানতে SurfaceView.setZOrderOnTop(boolean) দেখুন।

  • useViewLifecycle — শুধুমাত্র একটি SupportMapFragment অবজেক্টের সাথেই প্রযোজ্য। এটি নির্দিষ্ট করে যে ম্যাপের লাইফসাইকেলটি ফ্র্যাগমেন্টের ভিউ-এর সাথে নাকি ফ্র্যাগমেন্টটির নিজের সাথে যুক্ত থাকবে। বিস্তারিত জানতে রেফারেন্স ডকুমেন্টেশন দেখুন।

  • liteModeলাইট মোড চালু করতে true ; অন্যথায় false

  • mapColorScheme — একটি সাধারণ এবং ভূখণ্ডের মানচিত্রের জন্য রঙের স্কিম নির্দিষ্ট করে। এর মানগুলোর মধ্যে রয়েছে light (ডিফল্ট), dark , এবং follow_system , যার অর্থ UI_NIGHT_MODE_MASK এর জন্য ডিভাইসের সেটিং অনুসারে বর্তমান সিস্টেম সেটিং ব্যবহার করা। আরও তথ্যের জন্য, মানচিত্রের রঙের স্কিম দেখুন।

আপনার লেআউট ফাইলে এই কাস্টম অ্যাট্রিবিউটগুলো ব্যবহার করার জন্য, ফাইলটিতে অবশ্যই নিম্নলিখিত নেমস্পেস ডিক্লারেশনটি অন্তর্ভুক্ত থাকতে হবে। আপনি যেকোনো নেমস্পেস বেছে নিতে পারেন, সেটি ' map হতে হবে এমন কোনো বাধ্যবাধকতা নেই।

xmlns:map="http://schemas.android.com/apk/res-auto"

এরপর আপনি আপনার লেআউট ফাইলে map: ` প্রিফিক্স ব্যবহার করে অ্যাট্রিবিউটগুলো যোগ করতে পারেন।

নিম্নলিখিত লেআউট ফাইলটি কাস্টম ম্যাপ অ্যাট্রিবিউট সহ একটি SupportMapFragment অবজেক্ট কনফিগার করে। একই অ্যাট্রিবিউটগুলো একটি MapView অবজেক্টেও প্রয়োগ করা যেতে পারে।

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:map="http://schemas.android.com/apk/res-auto"
  android:name="com.google.android.gms.maps.SupportMapFragment"
  android:id="@+id/map"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  map:cameraBearing="112.5"
  map:cameraTargetLat="-33.796923"
  map:cameraTargetLng="150.922433"
  map:cameraTilt="30"
  map:cameraZoom="13"
  map:mapType="normal"
  map:mapColorScheme="dark"
  map:uiCompass="false"
  map:uiRotateGestures="true"
  map:uiScrollGestures="false"
  map:uiTiltGestures="true"
  map:uiZoomControls="false"
  map:uiZoomGestures="true"/>

ডায়নামিকভাবে যোগ করার পরে একটি মানচিত্র কনফিগার করুন।

এই অংশে বর্ণনা করা হয়েছে, যদি আপনি আপনার অ্যাপে ডায়নামিকভাবে ম্যাপ যোগ করে থাকেন, তাহলে সেটির প্রাথমিক অবস্থা কীভাবে সেট করতে হয়।

যদি আপনি ডাইনামিকভাবে একটি SupportMapFragment বা MapView যোগ করে থাকেন, তাহলে আপনি একটি GoogleMapOptions অবজেক্টে ম্যাপের প্রাথমিক অবস্থা সেট করতে পারেন। এখানে উপলব্ধ অপশনগুলো লেআউট ফাইলে উপলব্ধ অপশনগুলোর মতোই। আপনি নিম্নলিখিত উপায়ে একটি GoogleMapOptions তৈরি করতে পারেন:

কোটলিন

val options = GoogleMapOptions()

      

জাভা

GoogleMapOptions options = new GoogleMapOptions();

      

এবং তারপর এটিকে নিম্নরূপভাবে কনফিগার করুন:

কোটলিন

options.mapType(GoogleMap.MAP_TYPE_SATELLITE)
    .compassEnabled(false)
    .rotateGesturesEnabled(false)
    .tiltGesturesEnabled(false)

      

জাভা

options.mapType(GoogleMap.MAP_TYPE_SATELLITE)
    .compassEnabled(false)
    .rotateGesturesEnabled(false)
    .tiltGesturesEnabled(false);

      

মানচিত্র তৈরি করার সময় এই বিকল্পগুলি প্রয়োগ করতে, নিম্নলিখিতগুলির মধ্যে একটি করুন:

  • আপনি যদি SupportMapFragment ব্যবহার করেন, তাহলে ফ্র্যাগমেন্টটি তৈরি করতে এবং আপনার সেটিংস পাস করতে SupportMapFragment.newInstance(GoogleMapOptions options) স্ট্যাটিক ফ্যাক্টরি মেথডটি ব্যবহার করুন।
  • আপনি যদি MapView ব্যবহার করেন, তাহলে MapView(Context, GoogleMapOptions) কনস্ট্রাক্টরটি ব্যবহার করুন এবং আপনার সেটিংসগুলো পাস করুন।

আপনার মানচিত্রের অবস্থান নির্ণয় করুন

যখন আপনি আপনার অ্যাপে একটি MapView বা SupportMapFragment যোগ করেন, তখন ব্যবহারকারীর ডিভাইসের সেটিংস এবং অবস্থানের উপর ভিত্তি করে ম্যাপের টেক্সচুয়াল এলিমেন্টগুলো উপযুক্ত ভাষায় প্রদর্শিত হয়। আপনার Gradle ফাইলে একটি resConfigs আইটেম যোগ করে, আপনি আপনার অ্যাপে ব্যবহৃত ভাষাগুলোকে সমস্ত সমর্থিত ভাষার একটি উপসেটে সীমাবদ্ধ করতে পারেন। এটি অব্যবহৃত ভাষাগুলো বাদ দেওয়ার জন্য উপকারী এবং এটি আপনার অ্যাপের বাইনারি সাইজও হ্রাস করে। উদাহরণস্বরূপ:

defaultConfig {
    resConfigs "en", "fr", "es", "zh", "de", "ja", "ru", "ko", "pt", "in"
}

আপনার অ্যান্ড্রয়েড অ্যাপ স্থানীয়করণ সম্পর্কে আরও পড়ুন।

ট্র্যাফিক স্তর সেট আপ করুন

ট্র্যাফিক লেয়ারটি সক্রিয় করার মাধ্যমে আপনি আপনার ম্যাপে ট্র্যাফিকের তথ্য প্রদর্শন করতে পারেন। আপনি setTrafficEnabled() মেথডটি কল করে ট্র্যাফিক লেয়ারটি সক্রিয় ও নিষ্ক্রিয় করতে পারেন এবং isTrafficEnabled() মেথডটি কল করে ট্র্যাফিক লেয়ারটি চালু আছে কিনা তা নির্ধারণ করতে পারেন। নিচের স্ক্রিনশটটিতে ট্র্যাফিক লেয়ার সক্রিয় থাকা একটি ম্যাপ দেখানো হয়েছে।

Traffic Layer

ট্রানজিট লেয়ার সেট আপ করুন

ট্রানজিট লেয়ারটি সক্রিয় করার মাধ্যমে আপনি আপনার ম্যাপে ট্রানজিট ডেটা প্রদর্শন করতে পারেন। আপনি setTransitEnabled() মেথডটি কল করে ট্রানজিট লেয়ারটি সক্রিয় ও নিষ্ক্রিয় করতে পারেন এবং isTransitEnabled() মেথডটি কল করে ট্রানজিট লেয়ারটি চালু আছে কিনা তা নির্ধারণ করতে পারেন। নিচের স্ক্রিনশটটিতে ট্রানজিট লেয়ার সক্রিয় থাকা একটি ম্যাপ দেখানো হয়েছে।

Transit Layer

মানচিত্রের ধরণ সেট করুন

ম্যাপের ধরন নির্ধারণ করতে setMapType মেথডটি কল করুন। উদাহরণস্বরূপ, একটি স্যাটেলাইট ম্যাপ প্রদর্শন করতে:

কোটলিন

// Sets the map type to be "hybrid"
map.mapType = GoogleMap.MAP_TYPE_HYBRID

      

জাভা

// Sets the map type to be "hybrid"
map.setMapType(GoogleMap.MAP_TYPE_HYBRID);

      

নিম্নলিখিত চিত্রটি সাধারণ, হাইব্রিড এবং ভূখণ্ড মানচিত্রের প্রকারগুলির তুলনা করে:

A comparison of the three map types: normal, hybrid, and terrain maps.

ত্রিমাত্রিক ভবন তৈরি করুন

অনেক শহরকে কাছ থেকে দেখলে ত্রিমাত্রিক (3D) ভবন দেখা যায়, যেমনটি কানাডার ভ্যাঙ্কুভারের নিচের ছবিতে দেখা যাচ্ছে। আপনি GoogleMap.setBuildingsEnabled(false) কল করে ত্রিমাত্রিক ভবনগুলো নিষ্ক্রিয় করতে পারেন।

কানাডার ভ্যাঙ্কুভারের একটি মানচিত্র

ইনডোর ম্যাপ সেটিংস সেট আপ করুন

উচ্চ জুম স্তরে, মানচিত্রটি বিমানবন্দর, শপিং মল, বড় খুচরা দোকান এবং ট্রানজিট স্টেশনের মতো অভ্যন্তরীণ স্থানগুলির ফ্লোর প্ল্যান দেখায়। এই ফ্লোর প্ল্যানগুলি, যা ইনডোর ম্যাপ নামে পরিচিত, 'নরমাল' এবং 'স্যাটেলাইট' ম্যাপ টাইপের ( GoogleMap.MAP_TYPE_NORMAL এবং GoogleMap.MAP_TYPE_SATELLITE ) জন্য প্রদর্শিত হয়। ব্যবহারকারী জুম ইন করলে এগুলি স্বয়ংক্রিয়ভাবে চালু হয় এবং ম্যাপ জুম আউট করলে অদৃশ্য হয়ে যায়।

অপ্রচলিত হওয়ার বিজ্ঞপ্তি: ভবিষ্যতের একটি রিলিজে, ইনডোর ম্যাপ শুধুমাত্র normal ম্যাপ টাইপে উপলব্ধ হবে। সেই ভবিষ্যতের রিলিজ থেকে, satellite , terrain বা hybrid ম্যাপে ইনডোর ম্যাপ সমর্থিত হবে না। যেখানে ইনডোর সমর্থিত নয়, সেখানেও isIndoorEnabled() ফাংশনটি setIndoorEnabled() ব্যবহার করে সেট করা মানটিই রিটার্ন করতে থাকবে, যেমনটি এখন করে। ডিফল্টরূপে, setIndoorEnabled true থাকে। এই ম্যাপ টাইপগুলিতে কখন ইনডোর সাপোর্ট অনুপলব্ধ হবে, তা রিলিজ নোটে আপনাকে জানানো হবে।

An indoor map of a shopping mall that shows the exits and merchandise sections.

এপিআই-তে ইনডোর ম্যাপের সক্ষমতাগুলোর একটি সারসংক্ষেপ নিচে দেওয়া হলো:

  • আপনি GoogleMap.setIndoorEnabled(false) কল করে ইনডোর ম্যাপ নিষ্ক্রিয় করতে পারেন। ডিফল্টরূপে, ইনডোর ম্যাপ সক্রিয় থাকে। ইনডোর ম্যাপ একবারে একটি ম্যাপে প্রদর্শিত হয়। ডিফল্টরূপে এটি আপনার অ্যাপে যোগ করা প্রথম ম্যাপ। অন্য কোনো ম্যাপে ইনডোর ম্যাপ প্রদর্শন করতে, প্রথমে প্রথম ম্যাপে এটি নিষ্ক্রিয় করুন, তারপর দ্বিতীয় ম্যাপে setIndoorEnabled(true) কল করুন।
  • ডিফল্ট লেভেল পিকার (ফ্লোর পিকার) নিষ্ক্রিয় করতে, GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(false) কল করুন। আরও বিস্তারিত জানতে, "মানচিত্রের সাথে মিথস্ক্রিয়া" দেখুন।
  • OnIndoorStateChangeListener — এমন লিসেনার নির্ধারণ করে যা কোনো বিল্ডিং ফোকাসে এলে, বা বিল্ডিংয়ের কোনো লেভেল সক্রিয় হলে তা শনাক্ত করে। বিস্তারিত জানতে, ‘মানচিত্রের সাথে মিথস্ক্রিয়া’ দেখুন।
  • getFocusedBuilding — ফোকাসে থাকা বিল্ডিংটি খুঁজে বের করে। এরপর আপনি IndoorBuilding.getActiveLevelIndex() কল করে সক্রিয় লেভেলটি খুঁজে নিতে পারেন।
  • বেস ম্যাপ স্টাইল করলে ইনডোর ম্যাপের উপর কোনো প্রভাব পড়ে না।

মানচিত্র প্যাডিং সেট আপ করুন

এই ভিডিওতে ম্যাপ প্যাডিং-এর একটি উদাহরণ দেখানো হয়েছে।

একটি গুগল ম্যাপ তার কন্টেইনার এলিমেন্ট (সাধারণত একটি MapView বা SupportMapFragment ) দ্বারা সংজ্ঞায়িত সম্পূর্ণ অঞ্চলটি পূরণ করার জন্য ডিজাইন করা হয়। ম্যাপটি দেখতে কেমন হবে এবং এর আচরণ কেমন হবে তার বিভিন্ন দিক এর কন্টেইনারের মাত্রা দ্বারা নির্ধারিত হয়:

  • ক্যামেরার লক্ষ্যবস্তুটি প্যাড করা অঞ্চলের কেন্দ্রকে প্রতিফলিত করবে।
  • মানচিত্রের নিয়ন্ত্রণগুলো মানচিত্রের প্রান্তসীমার সাপেক্ষে স্থাপন করা হয়।
  • কপিরাইট বিবৃতি বা গুগল লোগোর মতো আইনি তথ্য মানচিত্রের নিচের প্রান্তে প্রদর্শিত হয়।

আপনি GoogleMap setPadding() মেথড ব্যবহার করে ম্যাপের কিনারা বরাবর প্যাডিং যোগ করতে পারেন। ম্যাপটি সম্পূর্ণ কন্টেইনার জুড়েই থাকবে, কিন্তু টেক্সট ও কন্ট্রোলের অবস্থান, ম্যাপ জেসচার এবং ক্যামেরার মুভমেন্ট এমনভাবে কাজ করবে যেন এটিকে একটি ছোট জায়গায় রাখা হয়েছে। এর ফলে নিম্নলিখিত পরিবর্তনগুলো দেখা যায়:

  • এপিআই কল বা বাটন চাপার (যেমন, কম্পাস, আমার অবস্থান, জুম বাটন) মাধ্যমে ক্যামেরার নড়াচড়া প্যাডযুক্ত অঞ্চলের সাপেক্ষে হয়।
  • getCameraPosition মেথডটি প্যাড করা অঞ্চলের কেন্দ্রবিন্দু ফেরত দেয়।
  • Projection এবং getVisibleRegion মেথডগুলো প্যাড করা অঞ্চলটি ফেরত দেয়।
  • UI কন্ট্রোলগুলো কন্টেইনারের প্রান্ত থেকে নির্দিষ্ট সংখ্যক পিক্সেল দূরত্বে স্থাপন করা হয়।

ম্যাপের কিছু অংশের উপর UI ডিজাইন করার সময় প্যাডিং সহায়ক হতে পারে। নিচের ছবিতে, ম্যাপটির উপরের এবং ডান প্রান্ত বরাবর প্যাডিং করা হয়েছে। দৃশ্যমান ম্যাপ কন্ট্রোল এবং আইনি লেখা প্যাড করা অঞ্চলের (সবুজ রঙে দেখানো) প্রান্ত বরাবর প্রদর্শিত হবে, এবং ম্যাপটি (নীল রঙে দেখানো) সম্পূর্ণ কন্টেইনারটি জুড়ে থাকবে। এই উদাহরণে, আপনি ম্যাপ কন্ট্রোলগুলোকে আড়াল না করেই ম্যাপের ডান পাশে একটি মেনু ভাসিয়ে রাখতে পারেন।

Map Padding

মানচিত্রের রঙের স্কিম

সাধারণ এবং ভূখণ্ড ধরনের মানচিত্রের জন্য, আপনি মানচিত্রের রঙের স্কিমটি গতিশীলভাবে গাঢ়, হালকা বা বর্তমান সিস্টেম সেটিং ব্যবহার করার জন্য সেট করতে পারেন। উদাহরণস্বরূপ, আপনি দিনের সময় বা ডিভাইসটির অভ্যন্তরীণ বা বহিরাঙ্গন ব্যবহারের উপর ভিত্তি করে মানচিত্রের রঙের স্কিমটি গাঢ় বা হালকা করতে পারেন।

ডিফল্টরূপে, ম্যাপটি লাইট মোড ব্যবহার করে। বর্তমান সিস্টেম সেটিং মানটি ডিভাইসের UI_NIGHT_MODE_MASK সেটিং-এর উপর ভিত্তি করে নির্ধারিত হয়।

কোটলিন

mapFragment = SupportMapFragment.newInstance(GoogleMapOptions().mapColorScheme(MapColorScheme.DARK).mapId(mapId2))

জাভা

mapFragment = SupportMapFragment.newInstance(new GoogleMapOptions().mapColorScheme(MapColorScheme.DARK).mapId(mapId2));

আপনি GoogleMap.setMapColorScheme() মেথড ব্যবহার করে কালার স্কিম পরিবর্তন করে বর্তমান স্টাইলটিকে ডার্ক মোড, লাইট মোড বা সিস্টেম সেটিংস অনুযায়ী সেট করতে পারেন।

কোটলিন

googleMap.setMapColorScheme(MapColorScheme.DARK)
googleMap.setMapColorScheme(MapColorScheme.LIGHT)
googleMap.setMapColorScheme(MapColorScheme.FOLLOW_SYSTEM)

জাভা

googleMap.setMapColorScheme(MapColorScheme.DARK);
googleMap.setMapColorScheme(MapColorScheme.LIGHT);
googleMap.setMapColorScheme(MapColorScheme.FOLLOW_SYSTEM);

আপনার ম্যাপের জন্য নিজস্ব লাইট ও ডার্ক স্টাইল তৈরি করতে ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং ব্যবহার করুন।

পটভূমির রঙ কনফিগার করুন

ডার্ক মোডে কাজ করার সময় বা ম্যাপ ভিউ পরিবর্তন করার সময়, ডিফল্ট ম্যাপ ব্যাকগ্রাউন্ড কালার কনফিগার করা সুবিধাজনক হতে পারে। ম্যাপ অপশনের backgroundColor প্রপার্টি সেট করার মাধ্যমে এটি করা যায়।

কোটলিন

private val googleMapOptions: GoogleMapOptions =
    GoogleMapOptions().backgroundColor(Color.argb(255, 255, 0, 0));

জাভা

private GoogleMapOptions options = new GoogleMapOptions().backgroundColor(Color.argb(255, 255, 0, 0));

আপনি ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং ব্যবহার করে ব্যাকগ্রাউন্ড কালারও কনফিগার করতে পারেন। ম্যাপ স্টাইলিং-এ সেট করা ব্যাকগ্রাউন্ড কালারের অগ্রাধিকার লোকাল ব্যাকগ্রাউন্ড কালারের চেয়ে বেশি। আরও তথ্যের জন্য, ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং-এর জন্য অ্যাপের ব্যাকগ্রাউন্ড কালার পরিবর্তন দেখুন।