एंड्रॉइड में फुलस्क्रीन मोड: नेविगेशन बार और एक्शन बार छुपाना
यह ट्यूटोरियल दिखाता है कि सिस्टम नेविगेशन बार (बैक, होम, रीसेंट बटन) और एक्शन बार को छुपाकर ट्रू फुलस्क्रीन अनुभव कैसे प्राप्त करें।
चरण 1: नया प्रोजेक्ट बनाएं
Android Studio में File → New Project चुनें।
चरण 2: लेआउट (res/layout/activity_main.xml)
<?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>
चरण 3: MainActivity कोड (java/MainActivity.java)
package com.example.myapplication;
import android.annotation.TargetApi;
import android.content.pm.ActivityInfo;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
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);
// नेविगेशन बार छुपाएं (इमर्सिव मोड)
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_FULLSCREEN
);
// एक्शन बार छुपाएं
if (getSupportActionBar() != null) {
getSupportActionBar().hide();
}
}
}
मॉडर्न दृष्टिकोण (एंड्रॉइड 11+/API 30+)
// WindowInsetsController API उपयोग करें (डिप्रिकेटेड नहीं)
WindowInsetsControllerCompat controller = ViewCompat.getWindowInsetsController(getWindow().getDecorView());
if (controller != null) {
controller.hide(WindowInsetsCompat.Type.systemBars());
controller.setSystemBarsBehavior(WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE);
}
महत्वपूर्ण नोट्स
SYSTEM_UI_FLAG_IMMERSIVE_STICKYयूजर स्वाइप पर बार अस्थायी दिखाता है- एंड्रॉइड 4.4 (KitKat) से
SYSTEM_UI_FLAG_IMMERSIVEउपलब्ध है - डायलॉग/कीबोर्ड दिखने पर बार वापस आ सकते हैं
- गेम्स/वीडियो प्लेयर्स के लिए उपयुक्त
ऐप टेस्ट करें
डिवाइस पर चलाएं - कोई नेविगेशन बार या एक्शन बार नहीं दिखेगा, केवल काली स्क्रीन पर डिजिटल घड़ी।