با درود و احترام فراوان
چند سئوال دارم که شماره گذاری میکنم. ممنون میشم راهنمایی بفرمایید:
1.
علت اینکه کلاس ContactViewHolder رو درون کلاس ContactAdapter تعریف کردیم چیست؟ چرا به عنوان یه فایل مجزا در کنار کلاس ContactAdapter نساختیمش؟
2.
متغیر position در کد زیر چطور عوض میشه؟ هوشمنده؟ یعنی چه کسی به این متغیر مقدار میده؟
( public void onBindViewHolder(@NonNull ContactViewHolder holder, int position
; (Log.i(TAG, "onBindViewHolder: position=> "+position
;([holder.bindContact(contacts[position
3.عمل بازیافت و تشخیص اینکه از الان به بعد صرفا باید عمل بازیافت انجام بشه و نه صدا زدن متد onCreateViewHolder() برای ایجاد آیتم جدید چگونه هست و از کجا مدیریت میشه؟
4.
کامپایلر چگونه event چرخیدن غربیلک موس و یا درگ کردن موس رو میفهمه؟ مثلا در برنامه نویسی رویدادگرا در سی شارپ، eventها برای پنجرهها در قالب متدهایی تعریف میشن مثل mouse hover یا mouse click , ... و کلاسهای مربوط به entityهامون دربکگراند پنجرهها مدیریت میشن و دیتا تبادل میکنن.
اینجا eventها چگونه مدیریت میشن؟
5.
مقدار بازگشتی متد getItemCount() کجا استفاده میشه؟ ارتباطی با بحث position داره؟
ممنون از راهنمایی شما