নেভিগেশন বার লুকান

এই পাঠে নেভিগেশন বার কীভাবে লুকানো যায় তা বর্ণনা করা হয়েছে, যা Android 4.0 (API লেভেল 14)-এ প্রথম চালু করা হয়েছিল।

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

সিস্টেম বার

ছবি ১. নেভিগেশন বার।

নেভিগেশন বার লুকান

আপনি SYSTEM_UI_FLAG_HIDE_NAVIGATION ফ্ল্যাগ ব্যবহার করে নেভিগেশন বার লুকাতে পারবেন। এই স্নিপেট নেভিগেশন বার ও স্ট্যাটাস বার, দুটিই লুকিয়ে রাখে:

Kotlin

window.decorView.apply {
    // Hide both the navigation bar and the status bar.
    // SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as
    // a general rule, you should design your app to hide the status bar whenever you
    // hide the navigation bar.
    systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION or View.SYSTEM_UI_FLAG_FULLSCREEN
}

জাভা

View decorView = getWindow().getDecorView();
// Hide both the navigation bar and the status bar.
// SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as
// a general rule, you should design your app to hide the status bar whenever you
// hide the navigation bar.
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
              | View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);

এগুলি মনে রাখবেন:

  • এই পদ্ধতিতে, স্ক্রিনের যেকোনও জায়গায় টাচ করলে নেভিগেশন বার (এবং স্ট্যাটাস বার) আবার দেখা যায় এবং দৃশ্যমান থাকে। ব্যবহারকারীর ইন্টার‌্যাকশনের কারণে ফ্ল্যাগ মুছে যায়।
  • ফ্ল্যাগ মুছে দেওয়া হলে, আপনি বার আবার লুকাতে চাইলে, আপনার অ্যাপকে সেগুলি রিসেট করতে হবে। UI-এর দৃশ্যমানতা পরিবর্তনের জন্য কীভাবে শুনবেন সে সম্পর্কে আলোচনার জন্য UI-এর দৃশ্যমানতা পরিবর্তনের প্রতিক্রিয়া জানানো দেখুন যাতে আপনার অ্যাপ সেই অনুযায়ী প্রতিক্রিয়া জানাতে পারে।
  • আপনি কোথায় UI ফ্ল্যাগ সেট করছেন তার উপর নির্ভর করে। আপনার অ্যাক্টিভিটির onCreate() পদ্ধতিতে সিস্টেম বার লুকিয়ে রাখলে এবং ব্যবহারকারী হোম বোতাম প্রেস করলে, সিস্টেম বার আবার দেখা যাবে। ব্যবহারকারী অ্যাক্টিভিটি আবার খুললে, onCreate() কল করা হবে না, তাই সিস্টেম বার দেখা যাবে। ব্যবহারকারী আপনার অ্যাক্টিভিটিতে নেভিগেট করে প্রবেশ বা প্রস্থান করার সময় সিস্টেম UI-তে করা পরিবর্তন অপরিবর্তিত রাখতে চাইলে, UI ফ্ল্যাগ onResume() বা onWindowFocusChanged()-এ সেট করুন।
  • setSystemUiVisibility() পদ্ধতিটি শুধুমাত্র তখনই কাজ করে যখন আপনি যে ভিউ থেকে এটি কল করেন সেটি দৃশ্যমান হয়।
  • ভিউ থেকে নেভিগেট করে বেরিয়ে গেলে, setSystemUiVisibility()-এর মাধ্যমে সেট করা ফ্ল্যাগ মুছে যায়।

নেভিগেশন বারের পিছনে কন্টেন্ট দেখান

Android 4.1 এবং তার পরবর্তী ভার্সনে, আপনি নেভিগেশন বারের পিছনে আপনার অ্যাপ্লিকেশনের কন্টেন্ট দেখানোর জন্য সেট করতে পারেন, যাতে নেভিগেশন বার লুকানো এবং দেখানোর সময় কন্টেন্ট ছোট বড় না হয়। এটি করতে, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION ব্যবহার করুন। আপনার অ্যাপের লেআউট যাতে স্থির থাকে, তার জন্য আপনাকে SYSTEM_UI_FLAG_LAYOUT_STABLE ব্যবহার করতে হতে পারে।

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