পণ্যের খবর

উপাদান ৩ অ্যাডাপ্টিভ ১.২.০ স্থিতিশীল

২ মিনিটের পাঠ
Rob Orgiu
ডেভেলপার সম্পর্ক প্রকৌশলী

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

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

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

এই স্থিতিশীল রিলিজটি WindowManager 1.5.0-এর লার্জ এবং এক্সট্রা লার্জ ব্রেকপয়েন্ট সমর্থনের উপর ভিত্তি করে তৈরি করা হয়েছে এবং এতে ListDetailPaneScaffoldSupportingPaneScaffold জন্য নতুন রিফ্লো এবং লেভিটেট স্ট্র্যাটেজি চালু করা হয়েছে।

নতুন জানালার আকারের শ্রেণিবিভাগ: বড় এবং অতিরিক্ত বড়

newwindow.png


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

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

এই ফ্ল্যাগটি লাইব্রেরিকে প্রয়োজন অনুযায়ী L এবং XL ব্রেকপয়েন্টও রিটার্ন করতে সক্ষম করে।

নতুন অভিযোজন কৌশল: পুনঃপ্রবাহ এবং উত্তোলন

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

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

material.jpg

উইন্ডোর আকারের উপর ভিত্তি করে একটি প্যান রিফ্লো করা

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


material2.jpg

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

adaptStrategies প্যারামিটার ব্যবহার করে Navigator কনস্ট্রাক্টরের ভিতরে flow এবং levitate উভয় স্ট্র্যাটেজিই ঘোষণা করা যায়, এবং উভয় স্ট্র্যাটেজিই list-detail এবং supporting pane scaffolds উপর প্রয়োগ করা যায়।

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


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

    লিখেছেন:

    পড়তে থাকুন