ঝামেলা-মুক্ত টুকরো: অ্যান্ড্রয়েডের নেভিগেশন আর্কিটেকচার উপাদান ব্যবহার করে

লেখক: John Stephens
সৃষ্টির তারিখ: 2 জানুয়ারি 2021
আপডেটের তারিখ: 6 জুলাই 2024
Anonim
যদি এটি চিত্রায়িত না হয় তবে কেউ এটি বিশ্বাস করবে না
ভিডিও: যদি এটি চিত্রায়িত না হয় তবে কেউ এটি বিশ্বাস করবে না

কন্টেন্ট


2018 এর আই / ও সম্মেলনের সময় গুগল অ্যান্ড্রয়েড অ্যাপ্লিকেশন বিকাশের জন্য একটি নতুন পদ্ধতির ঘোষণা করেছে।

গুগলের অফিসিয়াল সুপারিশটি হ'ল এমন একক ক্রিয়াকলাপ তৈরি করা যা আপনার অ্যাপ্লিকেশনটির প্রধান প্রবেশ পয়েন্ট হিসাবে কাজ করে, তারপরে আপনার অ্যাপ্লিকেশনটির বাকী সামগ্রীটি টুকরো হিসাবে বিতরণ করবে।

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

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


নেভিগেশন আর্কিটেকচার উপাদানটি কী?

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

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

একটি নেভিগেশন গ্রাফের সমন্বয়ে:

  • গন্তব্য: ব্যবহারকারী পৃথক স্ক্রিনে নেভিগেট করতে পারে
  • পদক্ষেপ: ব্যবহারকারী আপনার অ্যাপের গন্তব্যগুলির মধ্যে যে রুটগুলি নিয়ে যেতে পারে

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


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

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

অ্যান্ড্রয়েড স্টুডিওতে নেভিগেশন সম্পাদক যুক্ত করা হচ্ছে

আপনাকে নেভিগেশন উপাদানটির সর্বাধিক সুবিধা পেতে সহায়তা করতে, অ্যান্ড্রয়েড স্টুডিও ৩.২ ক্যানারি এবং উচ্চতর বৈশিষ্ট্যগুলি একটি নতুন নেভিগেশন সম্পাদক।

এই সম্পাদক সক্ষম করতে:

  • অ্যান্ড্রয়েড স্টুডিও মেনু বার থেকে "অ্যান্ড্রয়েড স্টুডিও> পছন্দসমূহ ..." নির্বাচন করুন।
  • বাম-হাতের মেনুতে, "পরীক্ষামূলক" নির্বাচন করুন।
  • যদি এটি ইতিমধ্যে নির্বাচিত না হয় তবে "নেভিগেশন সম্পাদক সক্ষম করুন" চেকবক্সটি নির্বাচন করুন।

  • "ওকে" ক্লিক করুন।
  • অ্যান্ড্রয়েড স্টুডিও পুনরায় চালু করুন।

প্রকল্পের নির্ভরতা: নেভিগেশন খণ্ড এবং নেভিগেশন ইউআই

আপনার পছন্দসই সেটিংস সহ একটি নতুন প্রকল্প তৈরি করুন, তারপরে তার বিল্ড.gradle ফাইলটি খুলুন এবং নেভিগেশন-ফ্রেগমেন্ট এবং নেভিগেশন-ইউআইকে প্রকল্প নির্ভরতা হিসাবে যুক্ত করুন:

নির্ভরতা {বাস্তবায়ন ফাইলআর গাছ (dir: libs, অন্তর্ভুক্ত:) বাস্তবায়ন com.android.support:appcompat-v7:28.0.0 বাস্তবায়ন com.android.support.constraint: সীমাবদ্ধ-বিন্যাস: 1.1.3 // নিম্নলিখিত // বাস্তবায়ন যুক্ত করুন "অ্যান্ড্রয়েড.আরচ.নাভিগেশন: নেভিগেশন-টুকরা: 1.0.0-alpha05" // নেভিগেশন-ইউআই কিছু সহায়ক ফাংশন // প্রয়োগের অ্যাক্সেস সরবরাহ করে "android.arch.navication: নেভিগেশন-ইউআই: 1.0.0-alpha05" বাস্তবায়ন কম .android.support: সমর্থন-v4: 28.0.0 টেস্ট বাস্তবায়ন জুনিট: জুনিট: 4.12 অ্যান্ড্রয়েড টেস্টআইপ্লিমেশন com.android.support.test: রানার: 1.0.2 androidTestImplementation com.android.support.test.espresso: এসপ্রেসো-কোর: 3.0.2 }

আপনার অ্যাপ্লিকেশন নেভিগেশন একটি চাক্ষুষ ওভারভিউ পান

একটি নেভিগেশন গ্রাফ তৈরি করতে:

  • আপনার প্রকল্পের "পুনরায়" ডিরেক্টরিটি নিয়ন্ত্রণ করুন এবং "নতুন> অ্যান্ড্রয়েড রিসোর্স ডিরেক্টরি" নির্বাচন করুন।
  • "রিসোর্স ধরণ" ড্রপডাউন খুলুন এবং "নেভিগেশন" চয়ন করুন।
  • "ঠিক আছে" নির্বাচন করুন।
  • আপনার নতুন "পুনঃনির্মাণ / নেভিগেশন" ডিরেক্টরিটি নিয়ন্ত্রণ করুন এবং "নতুন> নেভিগেশন রিসোর্স ফাইল" নির্বাচন করুন।
  • "রিসোর্সের ধরণ" ড্রপডাউন খুলুন এবং "নেভিগেশন" নির্বাচন করুন।

  • এই ফাইলের নাম দিন; আমি “নাভ_গ্রাফ” ব্যবহার করছি।
  • "ওকে" ক্লিক করুন।

আপনার "রেস / নেভিগেশন / এনভি_গ্রাফ" ফাইলটি খুলুন এবং নেভিগেশন সম্পাদক স্বয়ংক্রিয়ভাবে চালু হবে। লেআউট সম্পাদকের অনুরূপ, নেভিগেশন সম্পাদকটি "ডিজাইন" এবং "পাঠ্য" ট্যাবগুলিতে বিভক্ত।

আপনি যদি "পাঠ্য" ট্যাবটি নির্বাচন করেন, আপনি নীচের XML দেখতে পাবেন:

<? xML version = "1.0" এনকোডিং = "utf-8"?> // নেভিগেশন ’প্রতিটি নেভিগেশন গ্রাফের মূল নোড //

"ডিজাইন" ট্যাবটি যেখানে আপনি নিজের অ্যাপ্লিকেশনটির নেভিগেশন চাক্ষুষভাবে তৈরি এবং সম্পাদনা করতে পারবেন।

বাম থেকে ডানে, নেভিগেশন সম্পাদকটি নিয়ে গঠিত:

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

নেভিগেশন গ্রাফ পপুলেট করা: গন্তব্য যুক্ত করা

আমাদের নেভিগেশন গ্রাফ বর্তমানে খালি। আসুন কিছু গন্তব্য যুক্ত করি।

আপনি ইতিমধ্যে বিদ্যমান ক্রিয়াকলাপ বা টুকরো যোগ করতে পারেন, তবে আপনি দ্রুত এবং সহজেই নতুন টুকরো তৈরি করতে নেভিগেশন গ্রাফটি ব্যবহার করতে পারেন:

  • "নতুন গন্তব্য" বোতামটি ক্লিক করুন এবং "ফাঁকা গন্তব্য তৈরি করুন" নির্বাচন করুন।

  • "টুকরা নাম" ক্ষেত্রে, আপনার খণ্ডের শ্রেণীর নাম লিখুন; আমি “ফার্স্টফ্র্যাগমেন্ট” ব্যবহার করছি।
  • নিশ্চিত করুন যে "লেআউট XML তৈরি করুন" চেকবক্সটি নির্বাচিত হয়েছে is
  • "টুকরা বিন্যাসের নাম" ক্ষেত্রটি সম্পূর্ণ করুন; আমি "ফ্র্যাগমেন্ট_ ফার্স্ট" ব্যবহার করছি।
  • "সমাপ্তি" এ ক্লিক করুন।

একটি ফার্স্টফ্র্যাগমেন্ট সাবক্লাস এবং সম্পর্কিত "ফ্রেগমেন্ট_ফায়ার্স.এক্সএমএল" লেআউট রিসোর্স ফাইলটি এখন আপনার প্রকল্পে যুক্ত করা হবে। নেভিগেশন গ্রাফে ফার্স্টফ্র্যাগমেন্টটি গন্তব্য হিসাবে উপস্থিত হবে।

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

আপনার প্রকল্পে একটি সেকেন্ডফ্র্যাগমেন্ট এবং থার্ডফ্র্যাগমেন্ট যুক্ত করতে ধুয়ে ফেলুন এবং পুনরাবৃত্তি করুন।

"পাঠ্য" ট্যাবে স্যুইচ করুন এবং আপনি দেখতে পাবেন যে এই পরিবর্তনগুলি প্রতিফলিত করতে এক্সএমএল আপডেট হয়েছে।

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

আপনি যদি কোনও ভিন্ন প্রারম্ভিক বিন্দু ব্যবহার করতে পছন্দ করেন, তবে ক্রিয়াকলাপে বা প্রশ্নযুক্ত খণ্ডটি নির্বাচন করুন এবং তারপরে "বৈশিষ্ট্যগুলি" প্যানেল থেকে "স্টার্ট গন্তব্য সেট করুন" নির্বাচন করুন।

বিকল্পভাবে, আপনি কোড পর্যায়ে এই পরিবর্তন করতে পারেন:

আপনার খণ্ড লেআউট আপডেট করা হচ্ছে

এখন আমাদের গন্তব্য রয়েছে, আসুন কিছু ব্যবহারকারীর ইন্টারফেস উপাদান যুক্ত করুন যাতে এটি বর্তমানে পরিষ্কার হয় যে আমরা বর্তমানে কোন অংশটি দেখছি।

আমি প্রতিটি খণ্ডে নিম্নলিখিতগুলি যুক্ত করতে যাচ্ছি:

  • একটি টেক্সটভিউতে খণ্ডের শিরোনাম রয়েছে
  • একটি বোতাম যা ব্যবহারকারীকে এক টুকরো থেকে অন্য খণ্ডে নেভিগেট করতে দেয়

প্রতিটি লেআউট রিসোর্স ফাইলের কোড এখানে:

Fragment_first.xml

Fragment_second.xml

Fragment_third.xml

ক্রিয়াগুলির সাথে আপনার গন্তব্যগুলিকে সংযুক্ত করা

পরবর্তী পদক্ষেপটি কর্মের মাধ্যমে আমাদের গন্তব্যগুলিকে যুক্ত করছে।

আপনি সাধারণ টানা এবং ড্রপ ব্যবহার করে নেভিগেশন সম্পাদকটিতে একটি ক্রিয়া তৈরি করতে পারেন:

  • নিশ্চিত করুন যে সম্পাদকের "ডিজাইন" ট্যাবটি নির্বাচিত হয়েছে।
  • আপনি যে গন্তব্যটি নেভিগেট করতে চান তার ডান দিকে ঘুরুন থেকে, যা এই উদাহরণস্বরূপ প্রথম পদক্ষেপ ra একটি বৃত্ত উপস্থিত হওয়া উচিত।
  • আপনি যে গন্তব্যটিতে নেভিগেট করতে চান তাতে আপনার কার্সারটিকে ক্লিক করুন এবং টেনে আনুন থেকে, যা সেকেন্ডফ্র্যাগমেন্ট। একটি নীল রেখা প্রদর্শিত হবে। যখন সেকেন্ডফ্র্যাগমেন্টটি নীলকে হাইলাইট করা হবে তখন এই গন্তব্যগুলির মধ্যে একটি লিঙ্ক তৈরি করতে কার্সারটি ছেড়ে দিন।

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

এই পরিবর্তনটি নেভিগেশন গ্রাফের এক্সএমএলেও প্রতিফলিত হয়েছে:

… … …

থার্ডফ্রেগমেন্টের সাথে সেকেন্ডফ্র্যাগমেন্টকে যুক্ত করে একটি ক্রিয়া এবং তৃতীয় ফ্রেমটিকে ফার্স্টফ্র্যাগমেন্টের সাথে সংযুক্ত করার জন্য একটি ক্রিয়া তৈরি করতে পুনরায় ধুয়ে নিন এবং পুনরাবৃত্তি করুন।

নেভিগেশন গ্রাফ হোস্টিং

নেভিগেশন গ্রাফ আপনার অ্যাপের গন্তব্য এবং ক্রিয়াকলাপের একটি চাক্ষুষ উপস্থাপনা সরবরাহ করে তবে এই ক্রিয়াগুলি চালিত করার জন্য কিছু অতিরিক্ত কোডের প্রয়োজন requires

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

আপনার প্রকল্পের "কার্যকলাপ_মাইন.এক্সএমএল" ফাইলটি খুলুন এবং একটি নাভহাস্টফ্র্যাগমেন্ট যুক্ত করুন।

<? xML version = "1.0" এনকোডিং = "utf-8"?> // এমন একটি খণ্ড তৈরি করুন যা নাভহস্টফ্রেগমেন্ট হিসাবে কাজ করবে //

উপরের কোডে, অ্যাপ্লিকেশন: ডিফল্টনাভহস্ট = "সত্য" ন্যাভিগেশন হোস্টকে যখনই সিস্টেমের "পিছনে" বোতামটি টিপবে তখন বাধা দিতে দেয়, সুতরাং অ্যাপটি সর্বদা আপনার নেভিগেশন গ্রাফে বর্ণিত নেভিগেশনকে সম্মান করে।

নাভাকন্ট্রোলারের সাথে ট্রিজিং ট্রানজিশন

এর পরে, আমাদের একটি NavController প্রয়োগ করতে হবে, যা একটি নতুন উপাদান যা একটি NavHostFraਮੈਂਟ মধ্যে নেভিগেশন প্রক্রিয়া পরিচালনার জন্য দায়ী।

একটি নতুন স্ক্রিনে নেভিগেট করতে, আপনাকে নেভিগেশন.ফাইন্ডনাভকন্ট্রোলার ব্যবহার করে একটি নেভকন্ট্রোলার পুনরুদ্ধার করতে হবে, নেভিগেট () পদ্ধতিটি কল করুন, তারপরে আপনি যে গন্তব্যে নেভিগেশন করছেন তার আইডি বা আপনি যে ক্রিয়াটি শুরু করতে চান তা পাস করুন। উদাহরণস্বরূপ, আমি "ক্রিয়াকলাপের প্রথম ফ্রেম_টো_সেকেন্ডফ্র্যাগমেন্ট" প্রার্থনা করছি, যা ব্যবহারকারীকে ফার্স্ট ফ্রেমমেন্ট থেকে সেকেন্ডফ্র্যাগমেন্টে নিয়ে যাবে:

নাভাকন্ট্রোলার নাভোকন্ট্রোলার = নেভিগেশন.ফাইন্ডনাভকন্ট্রোলার (getActivity (), R.id.my_nav_host_fraament); navController.navigate (R.id.action_firstFragment_to_secondFragment);

ব্যবহারকারী একটি বোতামে ক্লিক করে একটি নতুন স্ক্রিনে স্থানান্তরিত করবে, সুতরাং আমাদের একটি অনক্লিকলিস্টনার প্রয়োগ করতে হবে।

এই পরিবর্তনগুলি করার পরে, ফার্স্টফ্র্যাগমেন্টটি দেখতে এর মতো কিছু হওয়া উচিত:

আমদানি android.os.Bundle; আমদানি android.support.annotation.NonNull; আমদানি android.support.annotation.Nullable; আমদানি android.support.v4.app.Fraament; আমদানি android.view.LayoutInflater; আমদানি অ্যান্ড্রয়েড.ভিউ.ভিউ; আমদানি অ্যান্ড্রয়েড.ভিউ.ভিউগ্রুপ; আমদানি android.widget.Button; আমদানি androidx.navication.NavController; আমদানি androidx.navication. নাভিগেশন; পাবলিক ক্লাস ফার্স্টফ্র্যাগমেন্ট প্রসারিত করে Fra সর্বজনীন ফার্স্টফ্র্যাগমেন্ট () {} @ ওভাররাইড পাবলিক অকার্যকর অনক্রিট (বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {সুপার.অনক্রিয়েট (সেভড ইনস্ট্যান্সস্টেট); যদি (getArguments ()! = নাল) public}} @ সর্বজনীন ভিউ অনক্রিট ভিউ (লেআউটইনফ্লেটার ইনফ্লেটার, ভিউগ্রুপ পাত্রে, বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {ফেরত inflater.inflate (R.layout.fraament_first, ধারক, মিথ্যা); } @ ওভাররাইড পাবলিক অকার্যকর অন ভিউ ক্রেইটেড (@ নননল ভিউ ভিউ, @ ননবল বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {বাটন বোতাম = (বাটন) ভিউফাইন্ডভিউবিআইআইডি (আর.আইডি.বাটন); বাটন.সেটনক্লিকলিস্টার (নতুন দেখুন.অনলিক্লিকলিস্টার () {@ ওভাররাইড পাবলিক শূন্য অনক্লিক (ভিউ ভি) {নাভকন্ট্রোলার নাভকন্ট্রোলার = নেভিগেশন.ফাইন্ডনাভকন্ট্রোলার (getActivity (), আর। }}); }}

এরপরে, আপনার মেইনএ্যাকটিভিটি খুলুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

  • NavigationView.OnNavigationItemSelectedListener: নেভিগেশন আইটেমগুলিতে ইভেন্টগুলি পরিচালনা করার জন্য শ্রোতা
  • SecondFragment.OnFragmentInteractionListener: একটি নেভিগেশন সম্পাদকের মাধ্যমে সেকেন্ডফ্র্যাগমেন্ট তৈরি করার সময় তৈরি করা একটি ইন্টারফেস

মেইনএ্যাকটিভিটির জন্য ওফ্রেগমেন্টআইন্টেকেরেশন () পদ্ধতি প্রয়োগ করা দরকার, যা খণ্ড এবং ক্রিয়াকলাপের মধ্যে যোগাযোগের অনুমতি দেয়।

আমদানি android.support.v7.app.appCompatActivity; আমদানি android.os.Bundle; আমদানি android.net.Uri; আমদানি android.view.MenuItem; আমদানি android.support.design.widget. নেভিগেশনভিউ; আমদানি android.support.annotation.NonNull; সার্বজনীন শ্রেণীর মাইনঅ্যাক্টিভিটি অ্যাপকম্প্যাটঅ্যাক্টিভিটি প্রসারিত করে নেভিগেশনভিউ.অন নেভিগেশন আইটেমসিলেক্টলাইস্টেনার, সেকেন্ডফ্রেগমেন্ট.অনফ্র্যাগমেন্টআইনট্রাকশনলিস্টনার {@ ওভাররাইড সুরক্ষিত অকার্যকর অনক্রিট (বান্ডেল সেভডআইনস্ট্যান্সস্টেট) saved সুপার.অনক্রিট (সেভড ইনস্ট্যান্সস্টেট); setContentView (R.layout.activity_main); Av @ নেভিগেশন আইটেমসিলিগ্রেটেড (@ নননুল মেনু আইটেম আইটেম) ওভাররাইড পাবলিক বুলিয়ান false মিথ্যা ফিরিয়ে দিন; } @ ওভাররাইড সার্বজনীন শূন্যর উপর ফ্রেমমেন্টইন্টেকারেশন (উরি ইউরি) {}}

আরও নেভিগেশন যুক্ত করা হচ্ছে

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

আপনার দ্বিতীয় ফ্রেমটি খুলুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

@ ওভাররাইড সর্বজনীন শূন্য অন ভিউ ক্রেইটেড (@ নননুল ভিউ ভিউ, @ ননবল বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {বাটন বোতাম = (বাটন) ভিউফাইন্ডভিউবিআইআইডি (আর.আইডি.বাটন 2); বাটন.সেটনক্লিকলিস্টার (নতুন ভিউ.অনলিক্লিকলিস্টার () {@ ওভাররাইড পাবলিক শূন্য অনক্লিক (ভি ভি) {নাভকন্ট্রোলার নাভাকন্ট্রোলার = নেভিগেশন.ফাইন্ডনাভকন্ট্রোলার (getActivity (), আর। }}); }

তারপরে, তৃতীয় ফ্রেমমেন্টের অনভিউ তৈরি করা ব্লকটি আপডেট করুন:

@ ওভাররাইড সর্বজনীন শূন্য অন ভিউ ক্রেইটেড (@ নননুল ভিউ ভিউ, @ ননবল বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {বাটন বোতাম = (বাটন) ভিউফাইন্ডভিউবিআইআইডি (আর.আইডি.বাটন 3); বাটন.সেটনক্লিকলিস্টার (নতুন দেখুন.অনলিক্লিকলিস্টার () {@ ওভাররাইড পাবলিক শূন্য অনক্লিক (ভিউ ভি) {নাভকন্ট্রোলার নাভাকন্ট্রোলার = নেভিগেশন.ফাইন্ডনাভকন্ট্রোলার (getActivity (), আর.আইডি.আইভি_ভোস্ট_ফ্র্যাগমেন্ট)। }}); }

শেষ অবধি, তৃতীয় ফ্রেম যোগ করতে ভুলবেন না nআপনিফ্রেগমেন্টইন্ট্র্যাকশনলিস্টনার ইন্টারফেস আপনার মেইনএ্যাকটিভিটিতে:

পাবলিক ক্লাস মেইন অ্যাক্টিভিটি প্রসারিত অ্যাপকম্প্যাটএটিভিটি নেভিগেশনভিউ.অন নেভিগেশন আইটেমসিলেক্টলাইস্টেনার, সেকেন্ডফ্রেগমেন্ট.অনফ্র্যাগমেন্টআইন্ট্রেশনলিস্টনার, থার্ডফ্রেগমেন্ট.অনফ্র্যাগমেন্টআইন্টেকশনলিস্টনার extend

আপনার অ্যান্ড্রয়েড ডিভাইস বা অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস (এভিডি) এ এই প্রকল্পটি চালান এবং নেভিগেশন পরীক্ষা করুন। বিভিন্ন বোতামে ক্লিক করে আপনার তিনটি খণ্ডের মধ্যে নেভিগেট করতে সক্ষম হওয়া উচিত।

কাস্টম ট্রানজিশন অ্যানিমেশন তৈরি করা হচ্ছে

এই মুহুর্তে, ব্যবহারকারী আপনার অ্যাপের চারদিকে ঘুরতে পারে তবে প্রতিটি খণ্ডের মধ্যে রূপান্তরটি হঠাৎ আকস্মিক হয়ে যায়। এই চূড়ান্ত বিভাগে, আমরা প্রতিটি উত্তরণে আলাদা অ্যানিমেশন যুক্ত করতে নেভিগেশন উপাদানটি ব্যবহার করব, যাতে এগুলি আরও সহজেই ঘটে।

আপনি যে অ্যানিমেশনটি ব্যবহার করতে চান তা অবশ্যই তার নিজস্ব অ্যানিমেশন রিসোর্স ফাইলে একটি "পুনরায় / অ্যানিম" ডিরেক্টরিতে সংজ্ঞায়িত করা উচিত। যদি আপনার প্রকল্পে ইতিমধ্যে একটি "পুনরায় / অ্যানিম" ডিরেক্টরি না থাকে তবে আপনাকে একটি তৈরি করতে হবে:

  • আপনার প্রকল্পের "পুনরায়" ফোল্ডারটি কন্ট্রোল-ক্লিক করুন এবং "নতুন> অ্যান্ড্রয়েড রিসোর্স ডিরেক্টরি" নির্বাচন করুন।
  • এই ডিরেক্টরিটি "আনিম" নাম দিন।
  • "রিসোর্সের ধরণ" ড্রপডাউনটি খুলুন এবং "আনিম" চয়ন করুন।
  • "ঠিক আছে" ক্লিক করুন।

একটি বিবর্ণ আউট অ্যানিমেশন সংজ্ঞায়িত শুরু করা যাক:

  • আপনার প্রকল্পের "পুনরায় / আনিম" ডিরেক্টরিটি নিয়ন্ত্রণ করুন।
  • "নতুন> অ্যানিমেশন সংস্থান ফাইল" নির্বাচন করুন।
  • এই ফাইলটিকে "বিবর্ণ_আউট" নাম দিন।
  • আপনার "বিবর্ণ_আউট" ফাইলটি খুলুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

"স্লাইড_আউট_ফলে" নামে একটি দ্বিতীয় অ্যানিমেশন রিসোর্স ফাইল তৈরি করতে উপরের পদক্ষেপগুলি পুনরাবৃত্তি করুন, তারপরে নিম্নলিখিতগুলি যুক্ত করুন:

"স্লাইড_আউট_সামান্য" নামে একটি তৃতীয় ফাইল তৈরি করুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

আপনি এখন নেভিগেশন সম্পাদকের মাধ্যমে আপনার ক্রিয়ায় এই অ্যানিমেশনগুলি নির্ধারণ করতে পারেন assignবিবর্ণ আউট অ্যানিমেশন বাজানোর জন্য যখনই ব্যবহারকারী ফার্স্টফ্র্যাগমেন্ট থেকে সেকেন্ডফ্র্যাগমেন্টে নেভিগেট করে:

  • আপনার নেভিগেশন গ্রাফটি খুলুন এবং নিশ্চিত করুন যে "নকশা" ট্যাবটি নির্বাচিত হয়েছে।
  • অস্ট্রেলফ্র্যাগমেন্টকে সেকেন্ডফ্র্যাগমেন্টের সাথে সংযুক্ত করে এমন ক্রিয়াটি নির্বাচন করতে ক্লিক করুন।
  • "বৈশিষ্ট্যগুলি" প্যানেলে, "সংক্রমণগুলি" বিভাগটি প্রসারিত করতে ক্লিক করুন। ডিফল্টরূপে, এই বিভাগের প্রতিটি ড্রপডাউন "কিছুই নয়" এ সেট করা উচিত।
  • "এন্টার" ড্রপডাউনটি খুলুন যা অ্যানিমেশনটি নিয়ন্ত্রণ করে যা যখনই পিছনের স্ট্যাকের শীর্ষে সেকেন্ডফ্র্যাগমেন্ট স্থানান্তরিত হয় তখন বাজায়। "বিবর্ণ_আউট" অ্যানিমেশনটি নির্বাচন করুন।

আপনি যদি "ডিজাইন" ট্যাবে স্যুইচ করেন, তবে আপনি দেখতে পাবেন যে এই অ্যানিমেশনটি "ক্রিয়া_ফ্রাস্টফ্রেগমেন্ট_ থেকে_সেকেন্ডফ্র্যাগমেন্ট" এ যুক্ত হয়েছে।

আপনার অ্যান্ড্রয়েড ডিভাইস বা এভিডি তে আপডেট হওয়া প্রকল্পটি চালান। আপনি যখনই ফার্স্ট ফ্রেমমেন্ট থেকে সেকেন্ডফ্র্যাগমেন্টে নেভিগেট করেন তখন আপনার এখন একটি বিবর্ণ-আউট প্রভাবের মুখোমুখি হওয়া উচিত।

আপনি যদি "বৈশিষ্ট্যগুলি" প্যানেলে অন্য একবার নজর দেন, আপনি দেখতে পাবেন যে "এন্টার" স্থানান্তরের একমাত্র অংশ নয় যেখানে আপনি অ্যানিমেশন প্রয়োগ করতে পারেন। আপনি এগুলি থেকে চয়ন করতে পারেন:

  • থেকে প্রস্থান করুন: অ্যানিমেশন যা খণ্ড খণ্ড করে যখন স্ট্যাক ছেড়ে চলে যায় plays
  • পপ এন্টার: অ্যানিমেশন যা খণ্ডিত করে যখন কোনও খণ্ড স্ট্যাকের শীর্ষে পপুলেশন হয়
  • পপ প্রস্থান: কোনও অধ্যায় যখন স্ট্যাকের নীচে স্থানান্তরিত হয় তখন অ্যানিমেশনটি বাজায়

আপনার স্থানান্তরের বিভিন্ন অংশে বিভিন্ন অ্যানিমেশন প্রয়োগ করে পরীক্ষা করার চেষ্টা করুন। আপনি গিটহাব থেকে সমাপ্ত প্রকল্পটিও ডাউনলোড করতে পারেন।

মোড়ক উম্মচন

এই নিবন্ধে, আমরা কাস্টম ট্রানজিশন অ্যানিমেশন সহ সম্পূর্ণ একক কার্যকলাপ, একাধিক-খণ্ড অ্যাপ্লিকেশন তৈরি করতে নেভিগেশন আর্কিটেকচার উপাদানটি কীভাবে ব্যবহার করতে পারি তা আমরা দেখেছি। ন্যাভিগেশন উপাদান আপনাকে এই জাতীয় অ্যাপ্লিকেশন কাঠামোর জন্য আপনার প্রকল্পগুলি স্থানান্তর করতে বিশ্বাসী করেছে? নীচের মতামত আমাদের জানতে দিন!

গত বছর স্মার্টফোন ফটোগ্রাফি সম্পর্কে কথা বলার সময় "পিক্সেল বিনিং" শব্দটি নিয়মিত পপ আপ হয়েছে। শব্দটি হুবহু উত্তেজনা জাগ্রত করে না, তবে এটি আজকের দিনে প্রচুর ফোনে শক্তি জোগায়।...

সর্বশেষতম স্মার্টফোন ক্যামেরার ট্রেন্ড অনুসরণ করে তারা সম্ভবত "নাইট মোড", "নাইট দর্শন", "ব্রাইট নাইট", বা অন্যান্য অনুরূপ শর্তাদি শুনেছেন। এই নতুন শ্যুটিং মোডগুলি স্মার্ট...

জনপ্রিয়