অ্যান্ড্রয়েড দক্ষতা
গিটহাবে দেখুন জেটপ্যাক নেভিগেশন ৩
android skills add --skill navigation-3
নেভিগেশন ৩ হলো কম্পোজের সাথে কাজ করার জন্য ডিজাইন করা একটি নতুন নেভিগেশন লাইব্রেরি। নেভিগেশন ৩-এর মাধ্যমে আপনি আপনার ব্যাক স্ট্যাকের উপর সম্পূর্ণ নিয়ন্ত্রণ রাখতে পারেন এবং কোনো তালিকা থেকে আইটেম যোগ বা অপসারণ করার মতোই সহজ উপায়ে গন্তব্যে যাওয়া-আসা করা যায়। এটি নিম্নলিখিত সুবিধাগুলো প্রদানের মাধ্যমে একটি নমনীয় অ্যাপ নেভিগেশন সিস্টেম তৈরি করে:
- ব্যাক স্ট্যাক মডেল করার প্রচলিত নিয়ম, যেখানে ব্যাক স্ট্যাকের প্রতিটি এন্ট্রি ব্যবহারকারীর নেভিগেট করা কন্টেন্টকে প্রতিনিধিত্ব করে।
- এমন একটি UI যা ব্যাক স্ট্যাকের পরিবর্তনের সাথে সাথে স্বয়ংক্রিয়ভাবে আপডেট হয় (অ্যানিমেশন সহ)।
- ব্যাক স্ট্যাকে থাকা আইটেমগুলির জন্য একটি স্কোপ, যা কোনো আইটেম ব্যাক স্ট্যাকে থাকা অবস্থায় তার স্টেট ধরে রাখতে দেয়।
- একটি অভিযোজিত লেআউট সিস্টেম যা একই সময়ে একাধিক গন্তব্য প্রদর্শন করতে এবং সেই লেআউটগুলির মধ্যে নির্বিঘ্নে পরিবর্তন করতে দেয়।
- কন্টেন্টের তার প্যারেন্ট লেআউটের (মেটাডেটা) সাথে যোগাযোগ করার একটি প্রক্রিয়া
মোটামুটিভাবে, আপনি নেভিগেশন ৩ নিম্নলিখিত উপায়ে বাস্তবায়ন করেন:
- আপনার অ্যাপে ব্যবহারকারীরা যে কন্টেন্টে নেভিগেট করতে পারবেন, তা একটি অনন্য কী (key) দিয়ে সংজ্ঞায়িত করুন এবং সেই কী-টিকে কন্টেন্টে রিজলভ করার জন্য একটি ফাংশন যোগ করুন। ‘কন্টেন্টে কী রিজলভ করা’ দেখুন।
- এমন একটি ব্যাক স্ট্যাক তৈরি করুন যেখানে ব্যবহারকারীরা আপনার অ্যাপে নেভিগেট করার সময় কী-গুলো যুক্ত ও অপসারণ করা হবে। 'ব্যাক স্ট্যাক তৈরি করুন' দেখুন।
- আপনার অ্যাপের ব্যাক স্ট্যাক প্রদর্শন করতে একটি
NavDisplayব্যবহার করুন। যখনই ব্যাক স্ট্যাক পরিবর্তিত হয়, এটি প্রাসঙ্গিক বিষয়বস্তু দেখানোর জন্য UI আপডেট করে। ‘ব্যাক স্ট্যাক প্রদর্শন ’ দেখুন। - অভিযোজিত লেআউট এবং বিভিন্ন প্ল্যাটফর্ম সমর্থন করার জন্য প্রয়োজন অনুযায়ী
NavDisplayএর সিন স্ট্র্যাটেজিগুলো পরিবর্তন করুন।
আপনি AOSP-তে নেভিগেশন ৩-এর সম্পূর্ণ সোর্স কোড দেখতে পারেন।
জেটপ্যাক নেভিগেশনের উন্নতি
নেভিগেশন ৩ মূল জেটপ্যাক নেভিগেশন এপিআই-এর তুলনায় নিম্নলিখিত উপায়ে উন্নত:
- Compose-এর সাথে আরও সহজ ইন্টিগ্রেশন প্রদান করে
- আপনাকে ব্যাক স্ট্যাকের উপর সম্পূর্ণ নিয়ন্ত্রণ প্রদান করে
- এর মাধ্যমে এমন লেআউট তৈরি করা সম্ভব যা একই সময়ে ব্যাক স্ট্যাক থেকে একাধিক গন্তব্য থেকে ডেটা পড়তে পারে, ফলে সেগুলো উইন্ডোর আকার এবং অন্যান্য ইনপুটের পরিবর্তনের সাথে নিজেদের মানিয়ে নিতে পারে।
এই ব্লগ পোস্টে নেভিগেশন ৩-এর মূলনীতি এবং এপিআই ডিজাইনের সিদ্ধান্তগুলো সম্পর্কে আরও পড়ুন।
কোডের নমুনা
রেসিপি রিপোজিটরিতে নেভিগেশন ৩-এর বিল্ডিং ব্লকগুলো ব্যবহার করে কীভাবে সাধারণ নেভিগেশন সংক্রান্ত সমস্যা সমাধান করা যায়, তার উদাহরণ রয়েছে।