একটি ডিসপ্লে কাটআউট হল কিছু ডিভাইসের একটি এলাকা যা ডিসপ্লে পৃষ্ঠের মধ্যে প্রসারিত হয়। ডিভাইসের সামনে গুরুত্বপূর্ণ সেন্সরগুলির জন্য স্থান প্রদান করার সময় এটি প্রান্ত থেকে প্রান্তের অভিজ্ঞতার জন্য অনুমতি দেয়।
অ্যান্ড্রয়েড অ্যান্ড্রয়েড 9 (এপিআই লেভেল 28) এবং উচ্চতর ডিভাইসে ডিসপ্লে কাটআউট সমর্থন করে। যাইহোক, ডিভাইস নির্মাতারা অ্যান্ড্রয়েড 8.1 বা তার নিচের ডিভাইসে ডিসপ্লে কাটআউট সমর্থন করতে পারে।
এই পৃষ্ঠাটি বর্ণনা করে যে কীভাবে কম্পোজে কাটআউট সহ ডিভাইসগুলির জন্য সমর্থন প্রয়োগ করা যায়, এতে কাটআউট এলাকার সাথে কীভাবে কাজ করা যায় — অর্থাৎ, কাটআউটটি ধারণ করে প্রদর্শনের পৃষ্ঠের প্রান্ত-থেকে-প্রান্ত আয়তক্ষেত্র।
ডিফল্ট কেস
API লেভেল 34 বা তার নিচের অ্যাপ্লিকেশানগুলিকে টার্গেট করে, অথবা অ্যাক্টিভিটিগুলি যেগুলিকে enableEdgeToEdge
বলে না, ডিফল্টরূপে কাটআউট অঞ্চলে আঁকা হবে না যদি না অ্যাপটি ডিসপ্লে কাটআউট ধারণকারী একটি সিস্টেম বারে আঁকে৷
অ্যানড্রয়েড 15 বা উচ্চতর চলমান ডিভাইসগুলিতে API স্তরের 35 বা উচ্চতরকে লক্ষ্য করে এমন অ্যাপ্লিকেশানগুলি বা কার্যকলাপগুলি যা enableEdgeToEdge
কল করে, কাটআউট অঞ্চলে আঁকে৷
অন্য কথায়, LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT
, LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
, এবং LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER
LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS
এর জন্য উচ্চতর এপিআই-3-এর উইন্ডোজ-এর জন্য উচ্চতর অ্যাপিআই-এর ডিভাইসে LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS-এর জন্য ব্যাখ্যা করা হয়েছে Android 15 বা উচ্চতর চলমান।
ম্যানুয়ালি কাটআউট তথ্য পরিচালনা করুন
সূক্ষ্ম-স্পর্শ শনাক্তকরণের প্রয়োজনে গুরুত্বপূর্ণ টেক্সট, কন্ট্রোল বা ইন্টারেক্টিভ উপাদানগুলিকে অস্পষ্ট করা থেকে কাটআউট এলাকাটিকে আটকাতে আপনাকে অবশ্যই কাটআউট তথ্য পরিচালনা করতে হবে (কাটআউট এলাকায় স্পর্শ সংবেদনশীলতা কম হতে পারে)। কাটআউটগুলি পরিচালনা করার সময়, স্ট্যাটাস বারের উচ্চতা হার্ডকোড করবেন না, কারণ এটি ওভারল্যাপিং বা কাট-অফ সামগ্রীর দিকে পরিচালিত করতে পারে। পরিবর্তে, নিম্নলিখিত যে কোনও উপায়ে কাটআউটগুলি পরিচালনা করুন:
WindowInsets.displayCutout
,WindowInsets.safeContent
বাWindowInsets.safeDrawing
ব্যবহার করেLocalView.current.rootWindowInsets.displayCutout
দিয়ে কাটআউটPath
অবজেক্ট অ্যাক্সেস করা হচ্ছে
রচনার জন্য, আমরা সুপারিশ করি যে আপনি আপনার কম্পোজেবলগুলিতে কাটআউট ইনসেটগুলি পরিচালনা করতে displayCutout
, safeContent
বা safeDrawing
ব্যবহার করুন৷ এই পদ্ধতিটি আপনাকে যেখানে প্রয়োজন সেখানে ডিসপ্লে কাটআউট প্যাডিংকে সম্মান করতে দেয় বা যেখানে এটির প্রয়োজন নেই সেখানে উপেক্ষা করতে দেয়।
Canvas(modifier = Modifier.fillMaxSize().windowInsetsPadding(WindowInsets.displayCutout)) { drawRect(Color.Red, style = Stroke(2.dp.toPx())) }
আপনার সামগ্রী কাটআউট দিয়ে কীভাবে রেন্ডার হয় তা পরীক্ষা করুন
আপনার অ্যাপের সমস্ত স্ক্রীন এবং অভিজ্ঞতা পরীক্ষা করতে ভুলবেন না। সম্ভব হলে বিভিন্ন ধরনের কাটআউট সহ ডিভাইসে পরীক্ষা করুন। আপনার কাছে কাটআউট সহ একটি ডিভাইস না থাকলে, আপনি নিম্নলিখিতগুলি করে Android 9 বা উচ্চতর চলমান যে কোনও ডিভাইস বা এমুলেটরে সাধারণ কাটআউট কনফিগারেশনগুলি অনুকরণ করতে পারেন:
- বিকাশকারী বিকল্পগুলি সক্ষম করুন৷
- বিকাশকারী বিকল্পগুলির স্ক্রিনে, অঙ্কন বিভাগে নীচে স্ক্রোল করুন এবং একটি কাটআউট সহ একটি প্রদর্শন অনুকরণ নির্বাচন করুন।
- কাটআউট টাইপ নির্বাচন করুন।
আপনার জন্য প্রস্তাবিত
- দ্রষ্টব্য: জাভাস্ক্রিপ্ট বন্ধ থাকলে লিঙ্ক টেক্সট প্রদর্শিত হয়
- কম্পোজে উইন্ডো ইনসেট
- গ্রাফিক্স মডিফায়ার
- শৈলী অনুচ্ছেদ