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

আপনি enableEdgeToEdge কল করে আপনার অ্যাপে এজ-টু-এজ ডিসপ্লে সক্ষম করতে পারেন। এটি বেশিরভাগ অ্যাপের জন্য যথেষ্ট হওয়া উচিত। আপনার অ্যাপকে enableEdgeToEdge ব্যবহার না করেই যদি এজ-টু-এজ সক্ষম করতে হয় তাহলে এই নির্দেশিকাটি বর্ণনা করে।

পূর্ণ স্ক্রিনে আপনার অ্যাপ্লিকেশন লেআউট

নিম্নলিখিত কোড উদাহরণে দেখানো হয়েছে, সিস্টেম বারের পিছনে আপনার অ্যাপটি সাজানোর জন্য WindowCompat.setDecorFitsSystemWindows(window, false) ব্যবহার করুন:

কোটলিন

override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  WindowCompat.setDecorFitsSystemWindows(window, false)
}

জাভা

@Override
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
}

সিস্টেম বারের রঙ পরিবর্তন করুন

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

  • অঙ্গভঙ্গি নেভিগেশন মোড: সিস্টেমটি গতিশীল রঙ অভিযোজন প্রয়োগ করে যেখানে সিস্টেম বারের বিষয়বস্তু তাদের পিছনের বিষয়বস্তুর উপর ভিত্তি করে রঙ পরিবর্তন করে। নিম্নলিখিত উদাহরণে, নেভিগেশন বারের হ্যান্ডেলটি হালকা রঙে পরিবর্তিত হয় যখন এটি হালকা সামগ্রীর উপরে থাকে এবং যখন এটি অন্ধকার বিষয়বস্তুর উপরে থাকে তখন একটি হালকা রঙে পরিবর্তিত হয়।
চিত্র 1. অঙ্গভঙ্গি নেভিগেশন মোডে রঙ পরিবর্তন।
  • বোতাম মোড: সিস্টেমটি সিস্টেম বারগুলির পিছনে একটি স্বচ্ছ স্ক্রিম প্রয়োগ করে (এপিআই স্তর 29 বা তার পরে) বা একটি স্বচ্ছ সিস্টেম বার (এপিআই স্তর 28 বা তার আগের জন্য)।
স্বচ্ছ সিস্টেম বার দেখানো একটি চিত্র
চিত্র 2. সিস্টেম বারের পিছনে ট্রান্সলুসেন্ট স্ক্রিম।
  • স্ট্যাটাস বারের বিষয়বস্তুর রঙ: স্ট্যাটাস বারের বিষয়বস্তুর রঙ নিয়ন্ত্রণ করে, যেমন সময় এবং আইকন।
একটি চিত্র স্ট্যাটাস বারের বিষয়বস্তুর রঙ দেখাচ্ছে
চিত্র 3. স্ট্যাটাস বার বিষয়বস্তুর রঙ।

আপনি নেভিগেশন বারের রঙ সেট করতে themes.xml ফাইলটি সম্পাদনা করতে পারেন এবং বিকল্পভাবে, স্ট্যাটাস বারকে স্বচ্ছ এবং স্ট্যাটাস বারের বিষয়বস্তুর রঙ গাঢ় হিসাবে সেট করতে পারেন।

<!-- values-v29/themes.xml -->
<style name="Theme.MyApp">
  <item name="android:navigationBarColor">
     @android:color/transparent
  </item>

  <!-- Optional: set to transparent if your app is drawing behind the status bar. -->
  <item name="android:statusBarColor">
     @android:color/transparent
  </item>

  <!-- Optional: set for a light status bar with dark content. -->
  <item name="android:windowLightStatusBar">
    true
  </item>
</style>

আপনি সরাসরি WindowInsetsController API ব্যবহার করতে পারেন, কিন্তু আমরা দৃঢ়ভাবে সমর্থন লাইব্রেরি WindowInsetsControllerCompat ব্যবহার করার পরামর্শ দিই। আপনি স্থিতি বারের বিষয়বস্তুর রঙ নিয়ন্ত্রণ করতে theme.xml এর পরিবর্তে WindowInsetsControllerCompat API ব্যবহার করতে পারেন। এটি করার জন্য, setAppearanceLightNavigationBars() ফাংশনটি ব্যবহার করুন, নেভিগেশনের অগ্রভাগের রঙকে হালকা রঙে পরিবর্তন করতে true পাস করুন বা ডিফল্ট রঙে প্রত্যাবর্তনের জন্য false

কোটলিন

val windowInsetsController =
      ViewCompat.getWindowInsetsController(window.decorView)

windowInsetsController?.isAppearanceLightNavigationBars = true

জাভা

WindowInsetsControllerCompat windowInsetsController =
      ViewCompat.getWindowInsetsController(getWindow().getDecorView());
if (windowInsetsController == null) {
    return;
}

windowInsetsController.setAppearanceLightNavigationBars(true);