অ্যান্ড্রয়েডে সিস্টেম নেভিগেশন বার (Back, Home, Recent) লুকানোর পদ্ধতি
এই টিউটোরিয়ালে দেখানো হয়েছে কিভাবে একটি এক্টিভিটিকে ফুলস্ক্রিন (Immersive Mode) করতে হয় যাতে নিচের নেভিগেশন বাটন বার এবং শীর্ষের স্ট্যাটাস বার লুকায় মানে। এটি গেম বা ভিডিও প্লেয়ার অ্যাপের জন্য খুব দরকারী।
ধাপ ১: নতুন প্রজেক্ট তৈরি করুন
Android Studio-তে File → New Project নির্বাচন করুন।
ধাপ ২: লেয়াউট ফাইল (res/layout/activity_main.xml)
এখানে একটি DigitalClock ব্যবহার করা হয়েছে ডেমো দেখানোর জন্য। ব্যাকগ্রাউন্ড কালো রঙের।
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:background="#000"
tools:context=".MainActivity">
<DigitalClock
android:id="@+id/digital"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:textColor="#FFF"
android:layout_centerHorizontal="true" />
</LinearLayout>
ধাপ ৩: জাভা কোড (java/MainActivity.java)
onCreate মেথডে সিস্টেম UI ভিজিবিলিটি ফ্ল্যাগ সেট করে নেভিগেশন বার এবং স্ট্যাটাস বার লুকানো হয়েছে। পাশাপাশি একশনবারও লুকানো হয়েছে।
package com.example.myapplication;
import android.annotation.TargetApi;
import android.content.pm.ActivityInfo;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
public class MainActivity extends AppCompatActivity {
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// ফুলস্ক্রিন ফ্ল্যাগ
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
// অরিয়েন্টেশন লক (ঐচ্ছিক)
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LOCKED);
// সিস্টেম UI লুকানোর ফ্ল্যাগ (Immersive Sticky Mode)
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
// একশনবার লুকান
getSupportActionBar().hide();
}
}
অ্যাপ্লিকেশনটি রান করুন
আসল ডিভাইসে অ্যাপটি চালান। আপনি দেখবেন স্ট্যাটাস বার এবং নেভিগেশন বার সম্পূর্ণরূপে লুকানো আছে। স্ক্রিনের প্রান্ত থেকে সোয়াইপ করলে সেগুলি সাময়িকভাবে দেখাবে।

সর্বোত্তম অভ্যাস (Best Practice)
আধুনিক অ্যান্ড্রয়েড (API 30+) এ WindowInsetsController API ব্যবহার করা বেটার। উদাহরণ:
// API 30+
WindowInsetsController controller = getWindow().getInsetsController();
if (controller != null) {
controller.hide(WindowInsets.Type.systemBars());
controller.setSystemBarsBehavior(WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE);
}
পুরনো setSystemUiVisibility ডিপ্রিকেট হলেও এখনও কাজ করে।