যদি আপনার অ্যাপে কম্পোজ এবং ভিউ কোড উভয়ই থাকে, তাহলে আপনাকে স্পষ্টভাবে বলতে হবে যে প্রতিটি সিস্টেমের কোন ইনসেটগুলি ব্যবহার করা উচিত এবং নিশ্চিত করতে হবে যে ইনসেটগুলি সিবলিং ভিউতে পাঠানো হয়েছে।
ডিফল্ট ইনসেটগুলিকে ওভাররাইড করা হচ্ছে
যখন আপনার স্ক্রিনে একই শ্রেণিবিন্যাসে ভিউ এবং কম্পোজ কোড উভয়ই থাকে তখন আপনাকে ডিফল্ট ইনসেটগুলিকে ওভাররাইড করতে হতে পারে। এই ক্ষেত্রে, আপনাকে স্পষ্টভাবে বলতে হবে যে কোনটি ইনসেটগুলি ব্যবহার করা উচিত এবং কোনটি সেগুলি উপেক্ষা করা উচিত।
উদাহরণস্বরূপ, যদি আপনার বাইরেরতম লেআউটটি একটি অ্যান্ড্রয়েড ভিউ লেআউট হয়, তাহলে আপনার ভিউ সিস্টেমের ইনসেটগুলি ব্যবহার করা উচিত এবং কম্পোজের জন্য সেগুলি উপেক্ষা করা উচিত। বিকল্পভাবে, যদি আপনার বাইরেরতম লেআউটটি একটি কম্পোজেবল হয়, তাহলে আপনার কম্পোজে ইনসেটগুলি ব্যবহার করা উচিত এবং সেই অনুযায়ী AndroidView কম্পোজেবলগুলি প্যাড করা উচিত।
ডিফল্টরূপে, প্রতিটি ComposeView WindowInsetsCompat ব্যবহারের স্তরে সমস্ত ইনসেট ব্যবহার করে। এই ডিফল্ট আচরণ পরিবর্তন করতে, AbstractComposeView.consumeWindowInsets false এ সেট করুন।
ভিউয়ের জন্য ব্যাকওয়ার্ড সামঞ্জস্যপূর্ণ ইনসেট প্রেরণ
যদি আপনার অ্যাপে ভিউ কোড থাকে, তাহলে আপনাকে নিশ্চিত করতে হতে পারে যে ইনসেটগুলি অ্যান্ড্রয়েড ১০ (এপিআই লেভেল ২৯) বা তার নিচের ভার্সন চালিত ডিভাইসগুলিতে ভাইবোন ভিউতে পাঠানো হয়েছে। আরও তথ্যের জন্য এজ-টু-এজ ভিউ গাইড দেখুন।
সিস্টেম বার আইকন
enableEdgeToEdge কল করলে ডিভাইসের থিম পরিবর্তন হলে সিস্টেম বার আইকনের রঙ আপডেট হয়।
এজ-টু-এজ করার সময়, আপনাকে সিস্টেম বার আইকনের রঙগুলি ম্যানুয়ালি আপডেট করতে হতে পারে যাতে সেগুলি আপনার অ্যাপের ব্যাকগ্রাউন্ডের সাথে বৈপরীত্য হয়। উদাহরণস্বরূপ, হালকা স্ট্যাটাস বার আইকন তৈরি করতে:
কোটলিন
WindowCompat.getInsetsController(window, window.decorView) .isAppearanceLightStatusBars = false
জাভা
WindowCompat.getInsetsController(window, window.getDecorView()) .setAppearanceLightStatusBars(false);