android - অ্যান্ড্রয়েড পুনর্ব্যবহারযোগ্য ভিউ হোল্ডারের সাথে তালিকা ভিউ




performance listview (6)

অ্যান্ড্রয়েড ললিপপ এর আবির্ভাবের সাথে সাথে রিসাইক্লারভিউ আনুষ্ঠানিকভাবে তার পথ তৈরি করে। রিসাইক্লারউভিউ অনেক বেশি শক্তিশালী, নমনীয় এবং তালিকাভিউয়ের চেয়ে বড় বর্ধনশীল । আমি আপনাকে এটিতে একটি বিশদ অন্তর্দৃষ্টি দেওয়ার চেষ্টা করব।

1) ভিউহোল্ডার প্যাটার্ন

একটি তালিকাভিউতে, ভিউহোল্ডার প্যাটার্নটি ব্যবহার করার পরামর্শ দেওয়া হয়েছিল তবে এটি কখনও বাধ্যতা ছিল না। রিসাইক্লারভিউয়ের ক্ষেত্রে, এটি RecyclerView.ViewHolder শ্রেণিটি ব্যবহার করা বাধ্যতামূলক। এটি তালিকাভিউ এবং রিসাইক্লারভিউয়ের মধ্যে অন্যতম প্রধান পার্থক্য।

এটি রিসাইকারভিউতে জিনিসগুলিকে কিছুটা জটিল করে তোলে তবে আমরা তালিকাভিউতে যে সমস্যার মুখোমুখি হয়েছিলাম তা দক্ষতার সাথে সমাধান করা হয়।

2) লেআউটম্যানেজার

এটি রিসাইক্লার ভিউতে আনা আরও একটি বৃহত্তর বর্ধন। একটি তালিকাভিউতে, কেবলমাত্র এক ধরণের দর্শনই হ'ল উল্লম্ব তালিকাভিউ। এমনকি অনুভূমিক তালিকাভিউ বাস্তবায়নের কোনও সরকারী উপায় নেই।

এখন একটি পুনর্ব্যবহারযোগ্য ভিউ ব্যবহার করে আমাদের একটি থাকতে পারে

i) LinearLayoutManager - যা উভয় উল্লম্ব এবং অনুভূমিক তালিকার সমর্থন করে,

ii) StaggeredLayoutManager - এটি স্তিমিত তালিকার মতো পিন্টেস্ট সমর্থন করে,

iii) GridLayoutManager - যা গ্যালারী অ্যাপ্লিকেশনগুলিতে দেখা যায় গ্রিডগুলি প্রদর্শনের জন্য সমর্থন করে।

এবং সর্বোত্তম বিষয়টি হ'ল আমরা যা চাই তার সবগুলি গতিশীলভাবে করতে পারি।

3) আইটেম অ্যানিম্যাটর

তালিকাগুলিতে ভাল অ্যানিমেশনগুলির সমর্থন নেই, তবে রিসাইক্লারভিউ এতে একেবারে নতুন মাত্রা এনেছে brings RecyclerView.ItemAnimator ক্লাস ব্যবহার করে, ভিউগুলি অ্যানিমেট করা এত সহজ এবং স্বজ্ঞাত হয়ে উঠেছে।

4) আইটেম সজ্জা

লিস্টভিউগুলির ক্ষেত্রে, গতিশীলভাবে সীমানা বা বিভাজক যুক্ত করার মতো আইটেমগুলি সজ্জিত করা কখনই সহজ ছিল না। তবে রিসাইক্লারভিউয়ের ক্ষেত্রে, পুনর্ব্যবহারযোগ্য RecyclerView.ItemDecorator শ্রেণি বিকাশকারীদের বিশাল নিয়ন্ত্রণ দেয় তবে জিনিসগুলিকে কিছুটা সময় সাপেক্ষ ও জটিল করে তোলে।

5) অন আইটেম টাচলিস্টনার

একটি তালিকাভিউতে আইটেম ক্লিকগুলি বিরত করা সহজ ছিল, এর AdapterView.OnItemClickListener ইন্টারফেসের জন্য ধন্যবাদ। তবে রিসাইক্লারভিউ তার বিকাশকারীদেরকে RecyclerView.OnItemTouchListener দ্বারা আরও অনেক বেশি শক্তি এবং নিয়ন্ত্রণ দেয় তবে এটি বিকাশকারীদের জন্য কিছুটা জটিল করে RecyclerView.OnItemTouchListener

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

আমি সম্প্রতি অ্যান্ড্রয়েড RecycleView জুড়ে RecycleView যা অ্যান্ড্রয়েড 5.0 এর সাথে প্রকাশিত হয়েছিল এবং মনে হয় যে RecycleView এটিতে অন্তর্ভুক্ত ভিউহোল্ডার প্যাটার্ন সহ কেবল একটি RecycleView traditionalতিহ্যবাহী তালিকার ভিউ যা প্রতিবার একবারে তৈরি করার পরিবর্তে ভিউটির পুনরায় ব্যবহারকে উত্সাহ দেয়।

RecycleView ব্যবহারের অন্যান্য সুবিধা কী কী? পারফরম্যান্সের ক্ষেত্রে যদি উভয়েরই একই প্রভাব থাকে, তবে কেউ কেন রিসাইকেলভিউ ব্যবহার করতে বেছে নেবে?

সম্পাদন করা

আমি দেখতে পেয়েছি যে লোকেরা অনুরূপ প্রশ্ন জিজ্ঞাসা করেছে এবং উত্তরগুলি চূড়ান্ত নয়, তাদের এখানে রেকর্ড রক্ষার জন্য যুক্ত করেছে।

পুনর্ব্যবহারযোগ্য বনাম তালিকা দর্শন

আমাদের তালিকাগুলি প্রতিস্থাপনের জন্য রিসাইক্লার ভিউ ব্যবহার করা উচিত?

কেন রিসাইক্লারভিউতে আইটেমিক্লিকলিস্টার () নেই? এবং কীভাবে রিসাইক্লারভিউ তালিকাভুক্তির থেকে পৃথক?


আমি স্মৃতিশক্তি বৃদ্ধি পেয়ে গ্লাইড চিত্র লোডার সহ একটি ListView ব্যবহার করেছি। তারপরে আমি তালিকার ListView একটি RecyclerView ListView দিয়ে প্রতিস্থাপন করেছি। কোডিংয়ে এটি কেবলমাত্র আরও কঠিন নয়, এটি ListView চেয়ে আরও বেশি মেমরির ব্যবহারের দিকে পরিচালিত করে। কমপক্ষে, আমার প্রকল্পে।

অন্য ক্রিয়াকলাপে আমি EditText's সহ একটি জটিল তালিকা ব্যবহার করেছি। তাদের মধ্যে TextWatcher একটি ইনপুট পদ্ধতি পরিবর্তিত হতে পারে, এছাড়াও একটি TextWatcher প্রয়োগ করা যেতে পারে। যদি আমি একটি ViewHolder ব্যবহার করি তবে আমি কীভাবে স্ক্রোলিংয়ের সময় একটি TextWatcher প্রতিস্থাপন করতে পারি? সুতরাং, আমি ViewHolder ছাড়াই একটি ViewHolder ব্যবহার করেছি এবং এটি কার্যকর হয়।


রিসাইক্লার ভিউ তালিকাভিত্তিক উন্নতি হিসাবে তৈরি করা হয়েছিল, তাই হ্যাঁ, আপনি তালিকাভিউ নিয়ন্ত্রণের সাথে একটি সংযুক্ত তালিকা তৈরি করতে পারেন তবে পুনর্ব্যবহারযোগ্য ভিউ ব্যবহার করা এটি তত সহজ:

  1. উপরে / নিচে স্ক্রোল করার সময় কক্ষগুলি পুনরায় ব্যবহার : লিস্টভিউ অ্যাডাপ্টারে ভিউ হোল্ডার বাস্তবায়নের মাধ্যমে এটি সম্ভব, তবে এটি একটি alচ্ছিক জিনিস ছিল, যখন রিসাইক্ল ভিউতে এটি অ্যাডাপ্টার লেখার ডিফল্ট উপায়।

  2. এর ধারক থেকে তালিকাটি ডিকুপ্লস করে : যাতে আপনি লেআউটমেঞ্জার সেট করে বিভিন্ন পাত্রে (লিনিয়ারলআউট, গ্রিডলাউট) রানের সময় তালিকার আইটেমগুলি সহজেই রাখতে পারেন।

এমআরসিক্র্লারভিউ = (রিসাইক্লারভিউ) সন্ধান ভিউবিআইআইডি (আর.আইডি.মি_রিসাইক্লার_ভিউ); mRecyclerView.setLayoutManager (নতুন লিনিয়ারলআউটআউট ম্যানেজার (এটি)); mRecyclerView.setLayoutManager (নতুন গ্রিডলাউটম্যানেজার (এটি, 2));

  1. সাধারণ তালিকার ক্রিয়াকে অ্যানিমেট করে : অ্যানিমেশনগুলি decoupled এবং আইটেমনিমেটরের কাছে অর্পিত হয়। রিসাইক্লার ভিউ সম্পর্কে আরও রয়েছে, তবে আমি মনে করি যে এই পয়েন্টগুলি প্রধান।

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


article নিবন্ধ থেকে আরও (এটি পড়ুন!) তবে আমি নিম্নলিখিতটি উল্লেখ করা গুরুত্বপূর্ণ বলে মনে করি।

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

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


1. ধারক দেখুন

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

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

2. লেআউট ম্যানেজার

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

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

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

3. আইটেম অ্যানিমেটার

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

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

4. অ্যাডাপ্টার

লিস্টভিউ অ্যাডাপ্টারগুলি প্রয়োগ করা সহজ ছিল। তাদের একটি প্রধান পদ্ধতি getView ছিল যেখানে সমস্ত যাদু ঘটত। যেখানে মতামত একটি অবস্থানের সাথে আবদ্ধ ছিল। এছাড়াও তাদের কাছে একটি আকর্ষণীয় পদ্ধতিতে রেজিস্ট্রার ডেটাসেটঅবার্সার থাকত যেখানে অ্যাডাপ্টারে একজন পর্যবেক্ষককে ঠিক সেট করতে পারে। এই বৈশিষ্ট্যটি পুনর্ব্যবহারযোগ্য ভিউতেও উপস্থিত রয়েছে তবে এটির জন্য রিসাইক্লারভিউ.এডাপ্টারডেটাঅবার্সার ক্লাসটি ব্যবহৃত হয়। তবে তালিকাভিউর পক্ষে কথাটি হ'ল এটি অ্যাডাপ্টারের তিনটি ডিফল্ট বাস্তবায়ন সমর্থন করে:

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

5. তথ্য পরিবর্তন পরিবর্তন

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

তবে একটি পুনর্ব্যবহারযোগ্য অ্যাডাপ্টারের বিপরীতে, যদি কোনও একক আইটেম বা বিস্তৃত আইটেম পরিবর্তিত হয়, সেই অনুসারে পরিবর্তনটি জানানোর বিভিন্ন পদ্ধতি রয়েছে are এগুলি যথাক্রমে notifItemChanged এবং notifyItemRangeChanged এবং আরও অনেকের মত:

notifyItemInsterted notifyItemMoved notifyItemRangeInsterted notifyItemRangeRemoved এবং অবশ্যই পুরো তালিকাটি রিফ্রেশ করার জন্য এটির মূল পদ্ধতি রয়েছে অর্থাৎ notifyDataSetChanged যা বিজ্ঞাপিত করে পুরো ডেটা সেটটি পরিবর্তিত হয়েছে।

6. আইটেম সজ্জা

একটি তালিকাভিউতে কাস্টম বিভাজক প্রদর্শন করতে, সহজেই তালিকাভিউ এক্সএমএলে এই প্যারামিটারগুলি যুক্ত করা যেতে পারে:

এক্সএইচটিএমএল অ্যান্ড্রয়েড: ডিভাইডার = "@ অ্যান্ড্রয়েড: রঙ / স্বচ্ছ" অ্যান্ড্রয়েড: ডিভাইডারহাইট = "5 ডিপি" 1 2 অ্যান্ড্রয়েড: ডিভাইডার = "@ অ্যান্ড্রয়েড: রঙ / স্বচ্ছ" অ্যান্ড্রয়েড: ডিভাইডারহাইট = "5 ডিপি" অ্যান্ড্রয়েড রিক্সিকারভিউ সম্পর্কে আকর্ষণীয় অংশটি হ'ল, এখন পর্যন্ত এটি ডিফল্টরূপে আইটেমগুলির মধ্যে একটি বিভাজক প্রদর্শন করে না। যদিও গুগলের ছেলেরা ইচ্ছাকৃতভাবে কাস্টমাইজেশনের জন্য এগুলি রেখে গেছে। তবে এটি একটি বিকাশকারীদের জন্য প্রচেষ্টাকে ব্যাপকভাবে বৃদ্ধি করে। আপনি যদি আইটেমগুলির মধ্যে একটি বিভাজক যুক্ত করতে চান, তবে আপনার পুনর্ব্যবহারযোগ্য ভিউ আইটেমডেকারেশন ক্লাস ব্যবহার করে একটি কাস্টম বাস্তবায়ন করতে হবে।

অথবা আপনি সরকারী নমুনা থেকে এই ফাইলটি ব্যবহার করে একটি হ্যাক প্রয়োগ করতে পারেন: DividerItemDecoration.java

On.অনটাইমটচলিস্টনার

ক্লিকগুলি সনাক্তকরণের জন্য, যেমন অ্যাডাপ্টারভিউ.অনআইটেমিক্লিকলিস্টনার ইন্টারফেসের সাহায্যে একটি সাধারণ বাস্তবায়ন ব্যবহৃত তালিকাগুলি।

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


উপরে / নিচে স্ক্রোল করার সময় কক্ষগুলি পুনরায় ব্যবহার করুন - তালিকার ভিউ অ্যাডাপ্টারে ভিউ হোল্ডার বাস্তবায়নের মাধ্যমে এটি সম্ভব, তবে এটি একটি alচ্ছিক জিনিস ছিল, যখন রিসাইক্ল ভিউতে এটি অ্যাডাপ্টার লেখার ডিফল্ট উপায়।

এর ধারক থেকে তালিকাটি ডিকুপ্লস করে - যাতে আপনি লেআউট ম্যানেজারটি সেট করে বিভিন্ন পাত্রে (লিনিয়ারলআউট, গ্রিডলাউট) রানের সময় তালিকার আইটেমগুলি সহজেই রাখতে পারেন।

উদাহরণ:

mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
//or
mRecyclerView.setLayoutManager(new GridLayoutManager(this, 2));
mRecyclerView.setLayoutManager(new GridLayoutManager(this, 3));
  • সাধারণ তালিকার ক্রিয়া অ্যানিমেট করে।

  • অ্যানিমেশনগুলি decoupled এবং ItemAnimator অর্পণ করা ItemAnimator

রিসাইক্লার ভিউ সম্পর্কে আরও রয়েছে, তবে আমি মনে করি যে এই পয়েন্টগুলি প্রধান।

LayoutManager

i) লিনিয়ারলআউটআউট ম্যানেজার - যা উভয় উল্লম্ব এবং অনুভূমিক তালিকার সমর্থন করে,

ii) স্তিমিতলয়আউটআউট ম্যানেজার - এটি স্তিমিত তালিকার মতো পিন্টেস্ট সমর্থন করে,

iii) গ্রিডলআউটম্যানেজার - যা গ্যালারী অ্যাপ্লিকেশনগুলিতে দেখা যায় গ্রিডগুলি প্রদর্শনের জন্য সমর্থন করে।

এবং সর্বোত্তম বিষয়টি হ'ল আমরা যা চাই তার সবগুলি গতিশীলভাবে করতে পারি।





android-recyclerview