প্রোডাক্ট সংক্রান্ত খবর

Material 3 Adaptive 1.2.0 স্থিতিশীল

১ মিনিট লাগবে
Rob Orgiu-এর প্রোফাইল দেখুন
Rob Orgiu ডেভেলপার রিলেশনস ইঞ্জিনিয়ার

আমরা আনন্দের সাথে জানাচ্ছি যে Material 3 Adaptive 1.2.0 এখন স্টেবল!

এই রিলিজটি পূর্ববর্তী ভার্সনের ভিত্তির উপর ভিত্তি করে তৈরি করা হয়েছে, উইন্ডো সাইজ ক্লাসের জন্য আরও ব্রেকপয়েন্টে সহায়তা প্রসারিত করা এবং ডিসপ্লে প্যানগুলি অটোমেটিক রাখার জন্য নতুন কৌশল।

Material 3 Adaptive 1.2.0-এ নতুন কী আছে

এই স্টেবল রিলিজটি WindowManager 1.5.0-এর উপরে তৈরি করা হয়েছে যা বড় এবং অতিরিক্ত বড় ব্রেকপয়েন্টের জন্য কাজ করে এবং ListDetailPaneScaffold ও SupportingPaneScaffold-এর জন্য নতুন রিফ্লো এবং লেভিটেট স্ট্র্যাটেজি চালু করে। 

নতুন উইন্ডো সাইজ ক্লাস: বড় এবং অতিরিক্ত বড়

newwindow.png


WindowManager 1.5.0-এ দুটি নতুন ব্রেকপয়েন্ট যোগ করা হয়েছে যা উইন্ডোর প্রস্থের সাইজ ক্লাসের জন্য, যাতে এক্সপ্যান্ড করা উইন্ডো সাইজ ক্লাসের চেয়েও বড় উইন্ডো দেখানো যায়। আপনার কোডবেসে currentWindowAdaptiveInfo() কলে  নিম্নলিখিত প্যারামিটার যোগ করে বড় (L) এবং অতিরিক্ত বড় (XL) ব্রেকপয়েন্ট চালু করা যেতে পারে:

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

এই ফ্ল্যাগ লাইব্রেরিকে যখনই প্রয়োজন হবে তখনই L এবং XL ব্রেকপয়েন্ট ফিরিয়ে আনার অনুমতি দেয়।

নতুন অ্যাডাপ্টিভ স্ট্র্যাটেজি: রিফ্লো ও লেভিটেট

উইন্ডোতে কন্টেন্ট ও ডিসপ্লে প্যানেল সাজানো একটি জটিল কাজ, যার জন্য উইন্ডোর সাইজ থেকে শুরু করে অনেক বিষয় বিবেচনা করতে হয়। নতুন Material 3 অ্যাডাপ্টিভ লাইব্রেরির মাধ্যমে, দুটি নতুন প্রযুক্তি আপনাকে ন্যূনতম প্রচেষ্টায় একটি অ্যাডাপ্টিভ লেআউট অর্জন করতে সাহায্য করতে পারে।

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

material.jpg

উইন্ডোর সাইজের উপর ভিত্তি করে প্যানেল রিফ্লো করা

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


 

material2.jpg

অ্যাস্পেক্ট রেশিওর উপর ভিত্তি করে প্যানেলকে সাইড থেকে সেন্টারে নিয়ে আসা

ফ্লো ও লেভিটেট স্ট্র্যাটেজি, দুটিই adaptStrategies প্যারামিটার ব্যবহার করে Navigator কনস্ট্রাক্টরের মধ্যে ঘোষণা করা যেতে পারে এবং দুটি স্ট্র্যাটেজিই তালিকা-বিবরণ ও সহায়ক প্যানে scaffolds প্রয়োগ করা যেতে পারে:

val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>(
        adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies(
            detailPaneAdaptStrategy = AdaptStrategy.Reflow(
                reflowUnder = ListDetailPaneScaffoldRole.List
            ),
            extraPaneAdaptStrategy = AdaptStrategy.Levitate(
                alignment = Alignment.Center
            )
        )
    )


 

এইসব নতুন অ্যাডাপ্টিভ স্ট্র্যাটেজি কীভাবে কাজে লাগাবেন সেই সম্পর্কে আরও জানতে, মেটেরিয়াল ওয়েবসাইট এবং GitHub-এ সম্পূর্ণ স্যাম্পেল কোড দেখুন।

লিখেছেন:
পড়া চালিয়ে যান