ডিসপ্লে কাটআউট হল কিছু ডিভাইসের এমন একটি অংশ যা ডিসপ্লে সারফেসের মধ্যে প্রসারিত হয়। এটি এজ-টু-এজ অভিজ্ঞতা প্রদান করে এবং ডিভাইসের সামনের দিকে গুরুত্বপূর্ণ সেন্সরগুলির জন্য জায়গা রাখে।
Android 9 (API লেভেল 28) ও এর পরবর্তী যেকোনও ভার্সনে চলে এমন ডিভাইসে Android ডিসপ্লে কাটআউট কাজ করে। তবে, ডিভাইস প্রস্তুতকারকরা Android 8.1 বা তার আগের যেকোনও ভার্সনে চলমান ডিভাইসে ডিসপ্লে কাটআউটও কাজ করতে পারে।
এই পৃষ্ঠায়, Compose-এ কাটআউট সহ ডিভাইসের জন্য কীভাবে সহায়তা প্রয়োগ করতে হয় তা বর্ণনা করা হয়েছে। এর মধ্যে, কাটআউট এরিয়া—অর্থাৎ, ডিসপ্লে সারফেসে এজ-টু-এজ আয়তক্ষেত্র যা কাটআউট কন্টেন্ট করে—এর সাথে কীভাবে কাজ করতে হয় তা অন্তর্ভুক্ত।
ডিফল্ট কেস
API লেভেল ৩৪ বা তার নিচের ভার্সনকে টার্গেট করা অ্যাপ অথবা
enableEdgeToEdge কল করে না এমন অ্যাক্টিভিটি, অ্যাপটি ডিসপ্লে কাটআউট থাকা সিস্টেম বারে
ড্র না করলে, ডিফল্ট হিসেবে কাটআউট অঞ্চলে ড্র করবে না।
Android 15 বা এর পরের যেকোনও ভার্সন চলছে এমন ডিভাইসে API লেভেল 35 বা এর পরের যেকোনও ভার্সনকে টার্গেট করা অ্যাপ অথবা enableEdgeToEdge কল করা অ্যাক্টিভিটি, কাটআউট অঞ্চলে ড্র করে।
অন্যভাবে বলতে গেলে, Android 15 বা
এর পরবর্তী যেকোনও ভার্সনে চলা ডিভাইসে API লেভেল ৩৫ বা
এর পরবর্তী যেকোনও ভার্সনকে টার্গেট করা অ্যাপে নন-ফ্লোটিং উইন্ডোর জন্য 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 হিসেবে ব্যাখ্যা করা হয়।
কাটআউট সংক্রান্ত তথ্য ম্যানুয়ালি ম্যানেজ করা
কাটআউট এরিয়া যাতে গুরুত্বপূর্ণ টেক্সট, কন্ট্রোল বা ফাইন-টাচ রেcognition (কাটআউট এরিয়ায় টাচ সেনসিটিভিটি কম হতে পারে) প্রয়োজন এমন ইন্ট্যার্যাক্টিভ এলিমেন্টকে অস্পষ্ট করে না দেয়, তা নিশ্চিত করতে আপনাকে কাটআউট সংক্রান্ত তথ্য ম্যানেজ করতে হবে। কাট-আউট ম্যানেজ করার সময়, স্ট্যাটাস বারের উচ্চতা হার্ডকোড করবেন না, কারণ এর ফলে কন্টেন্ট ওভারল্যাপ বা কাট-অফ হয়ে যেতে পারে। পরিবর্তে, নিম্নলিখিত যেকোনও উপায়ে হ্যান্ডেল কাটআউট করুন:
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())) }
আপনার জন্য সাজেস্ট করা হয়েছে
- মনে রাখবেন: জাভাস্ক্রিপ্ট বন্ধ থাকলে লিঙ্ক টেক্সট দেখানো হয়
- Compose-এ উইন্ডো ইনসেট
- গ্রাফিক্স মডিফায়ার
- প্যারাগ্রাফের স্টাইল