basic4android

طراحی هر آیتم به صورت جداگانه - ریسایکر ویو

3 ارسال در این موضوع قرار دارد

با سلام ، 

آیا قابلیت این هستش که هر کدوم از آیتم هایی که لود میشن تو ریسایکلر یه طراحی جداگانه ای داشته باشن؟

چون الان چیزی که میگم رو میشه با اسکرول ویو زد یعنی یه لی اوت بسازیم و بیایم بهش اسکرول بدیم و هر چی تو لی اوت ساختیم اسکرول بشه

 

حالا میخوام ببینم میشه با ریسایکلر ویو به هر آیتم یه پنل جدا بدیم که دیزاینر طراحی کردیم

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر


اینا TYPE های شما هستند یعنی میتونید ازشون به عنوان شناسه یا Identifire استفاده کنید

Dim IMAGE_TYPE = 1, TEXTVIEW_TYPE = 2 As Int

که 1 به نشانه ی لیوت ایمیج ویو و 2 نشانه ی لیبل هست


توی این قسمت میای بر اساسشون لیوت میسازید

Sub LV_onCreateViewHolder (Parent As Panel, ViewType As Int)      '💎 onCreate 💎'
  Select (ViewType)
    
    Case IMAGE_TYPE :
      
      
    Case TEXTVIEW_TYPE :
      
  End Select
End Sub

که اگه نوع اول بود فلان بشه
اگه دوم بود فلان.

 

به این شکل آیتم جدید رو اضافه میکنید  درحالی که Type مورد نظر رو وارد کردید

Dim item As Model
  item.Title = "Title"
  item.viewType = TEXTVIEW_TYPE
  itemList.Add(item)
  LV.notifyItemAdded

با کد بالا یک آیتم جدید به لیستتون اضافه میشه

رویدادش رو هم ایجاد میکنید

Sub LV_GetItemViewType (Position As Int) As Int           '🎭 GetItemViewType 🎭'
	Dim item = itemList.Get(Position) As Model
	Return item.viewType
End Sub

 

توی onBind هم به این ترتیب آیتم ها رو تفکیک میکنید

Sub LV_onBindViewHolder (Parent As Panel, Position As Int)      '💎 onCreate 💎'
 Dim item = itemList.Get(Position) As Model
  Select (item.viewType)
    
    Case IMAGE_TYPE :
      
      
    Case TEXTVIEW_TYPE :
      
  End Select
End Sub

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری