নেভিগেশন ৩ হল একটি নতুন নেভিগেশন লাইব্রেরি যা কম্পোজের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে। নেভিগেশন ৩ এর সাহায্যে, আপনার ব্যাক স্ট্যাকের উপর আপনার সম্পূর্ণ নিয়ন্ত্রণ থাকবে এবং গন্তব্যস্থলে যাওয়া এবং সেখান থেকে নেভিগেট করা তালিকা থেকে আইটেম যোগ করা এবং অপসারণ করার মতোই সহজ। এটি একটি নমনীয় অ্যাপ নেভিগেশন সিস্টেম তৈরি করে যা প্রদান করে:
- ব্যাক স্ট্যাকের মডেলিংয়ের জন্য নিয়মাবলী, যেখানে ব্যাক স্ট্যাকের প্রতিটি এন্ট্রি ব্যবহারকারীর নেভিগেট করা সামগ্রীর প্রতিনিধিত্ব করে
- একটি UI যা ব্যাক স্ট্যাক পরিবর্তনের সাথে স্বয়ংক্রিয়ভাবে আপডেট হয় (অ্যানিমেশন সহ)
- ব্যাক স্ট্যাকের আইটেমগুলির জন্য একটি সুযোগ, যা ব্যাক স্ট্যাকে থাকা অবস্থায় স্টেট ধরে রাখার অনুমতি দেয়।
- একটি অভিযোজিত লেআউট সিস্টেম যা একই সাথে একাধিক গন্তব্যস্থল প্রদর্শনের অনুমতি দেয় এবং সেই লেআউটগুলির মধ্যে নির্বিঘ্নে স্যুইচিংয়ের অনুমতি দেয়।
- কন্টেন্টের মূল লেআউটের সাথে যোগাযোগের জন্য একটি প্রক্রিয়া (মেটাডেটা)
উচ্চ স্তরে, আপনি নিম্নলিখিত উপায়ে নেভিগেশন 3 বাস্তবায়ন করেন:
- আপনার অ্যাপে ব্যবহারকারীরা কোন কন্টেন্টে নেভিগেট করতে পারবেন তা নির্ধারণ করুন, প্রতিটির জন্য একটি অনন্য কী থাকবে, এবং কন্টেন্টে সেই কীটি সমাধান করার জন্য একটি ফাংশন যোগ করুন। Resolve keys to content দেখুন।
- একটি ব্যাক স্ট্যাক তৈরি করুন যেখানে ব্যবহারকারীরা আপনার অ্যাপ নেভিগেট করার সময় কীগুলি চাপবে এবং সরিয়ে ফেলা হবে। একটি ব্যাক স্ট্যাক তৈরি করুন দেখুন।
- আপনার অ্যাপের ব্যাক স্ট্যাক প্রদর্শনের জন্য একটি
NavDisplayব্যবহার করুন। যখনই ব্যাক স্ট্যাক পরিবর্তন হয়, তখন এটি প্রাসঙ্গিক বিষয়বস্তু প্রদর্শনের জন্য UI আপডেট করে। ব্যাক স্ট্যাক প্রদর্শন দেখুন। - অভিযোজিত লেআউট এবং বিভিন্ন প্ল্যাটফর্ম সমর্থন করার জন্য প্রয়োজন অনুসারে
NavDisplayএর দৃশ্য কৌশলগুলি পরিবর্তন করুন।
আপনি AOSP তে নেভিগেশন 3 এর সম্পূর্ণ সোর্স কোড দেখতে পারেন।
জেটপ্যাক নেভিগেশনের উন্নতি
নেভিগেশন 3 নিম্নলিখিত উপায়ে মূল জেটপ্যাক নেভিগেশন API-এর উপর উন্নতি করে:
- কম্পোজের সাথে একটি সহজ ইন্টিগ্রেশন প্রদান করে
- আপনাকে ব্যাক স্ট্যাকের সম্পূর্ণ নিয়ন্ত্রণ প্রদান করে
- এমন লেআউট তৈরি করা সম্ভব করে যা একই সময়ে ব্যাক স্ট্যাক থেকে একাধিক গন্তব্য পড়তে পারে, যা তাদের উইন্ডোর আকার এবং অন্যান্য ইনপুটগুলির পরিবর্তনের সাথে খাপ খাইয়ে নিতে দেয়।
এই ব্লগ পোস্টে নেভিগেশন 3 এর নীতি এবং API ডিজাইন পছন্দ সম্পর্কে আরও পড়ুন।
কোড নমুনা
রেসিপি সংগ্রহস্থলে সাধারণ নেভিগেশন চ্যালেঞ্জগুলি সমাধানের জন্য নেভিগেশন 3 বিল্ডিং ব্লকগুলি কীভাবে ব্যবহার করতে হয় তার উদাহরণ রয়েছে।