Farzin-PC

کاربر انجمن
  • تعداد ارسال ها

    6
  • تاریخ عضویت

  • آخرین بازدید

اعتبار در سایت

0 Neutral

1 دنبال کننده

درباره Farzin-PC

  • درجه
    کاربر جدید
  • تاریخ تولد تعیین نشده

آخرین بازدید کنندگان نمایه

548 بازدید کننده نمایه
  1. سلام سایز متن قابل تغییر نیست؟ چپ یا راست بودن فلش رو هم نیمشه تعیین کرد؟
  2. ببینید من یک لیست دارم که اطلاعات مربوط به هر آیتم توش هست (مثلاً: آیکن، اسم، قیمت،...) و نکته ای که هست اینه که اندازه این لیست متغییر هست! یک لیست دیگه دارم که اطلاعات هر بخش رو نگه میداره (مثلاً: عنوان و همون لیست بالایی) که باز هم تعداد متغییر هست. این لیست تعداد بخش ها رو مشخص میکنه (این لیست تو Global معرفی شده و از همه جا قابل دسترس هست) ریسایکلر اصلی بر اساس لیست دوم ساخته میشه پس به اندازه این لیست بخش میسازه (پس GetItemCount برابر هست با اندازه لیست دوم که در دسترس هست) تو هر بخش یه ریسایکلر دیگه تعریف میشه که آیتم های اون بخش رو نشون بده برای این که تو رویداد ریسایکلر داخلی بفهمم که مربوط به کدوم بخش بوده همون جا که ریسایکلر برای هر بخش ساخته میشه مقدار Tag رو برابر مقدار Position ریسایکلر اصلی میزارم حالا تو ریداد ریسایکلر داخلی هر بخش از طریق Sender میام Tag ریسایکلر رو میگیرم و متوجه میشم که این ریسایکلر داخلی برای کدوم بخش هست و اینجوری میتونم به لیست دوم مربوط به هر بخش دسترسی داشته باشم Dim LV = Sender As Hitex_LayoutView Dim ListAval = ListDovom.Get(LV.Tag) As HomePageSection تا اینجا همه چیز درست کار میکنه دیتا مربوط به هر بخش لود میشه و همه چیز دسته حالا مشکل اینجاست که اندازه ریسایکلر داخلی باید بر اساس اندازه لیست اول باشه (که برای هر بخش متفاوت هست) و چون این لیست تو Global تعریف نشده مستقیم قابل دسترس نیست پس باز هم نیاز به همچین متدی هست: Dim LV = Sender As Hitex_LayoutView Dim ListAval = ListDovom.Get(LV.Tag) As HomePageSection اما این بار تو رویداد GetItemCount ریسایکلر داخلی حالا مشکل من اینجاست که نمیشه تو این رویداد Sender رو گرفت که بتونم از طریق Tag بفهمم که مربوط به کدوم بخش هست که اندازه همون ریسایکلر رو مشخص کنم امیدوارم توضیحات کافی بوده باشه
  3. یه مشکل دیگه! تو رویداد GetItemCount نمیشه Tag ریسایکلر رو گرفت (مقدار null بر میگردونه) Sub LV_HomePageSectionItem_GetItemCount As Int '$ ItemCount $' ' Dim LV = Sender As Hitex_LayoutView ' Dim vt = HomePageItemList.Get(LV.Tag) As HomePageSection Dim vt = HomePageItemList.Get(1) As HomePageSection Return vt.SectionData.Size End Sub اگه بشه اینجا هم Tag رو گرفت تعداد آیتم های هر ریسایکلر داخلی میتونه متفاوت باشه!
  4. آقا ممنون با این مشکل حل شد!!! Dim LV = Sender As Hitex_LayoutView تو رویداد ریسایکلر اصلی مقدار Position رو دادم به Tag ریسایکلر داخلی که بتونم تو رویداد onBind ریسایکلر داخلی بفهمم مال Section چندم هست Sub LV_HomePage_onBindViewHolder (Parent As Panel, Position As Int) '* onBind *' Dim LV_HomePageSection = Parent.GetView(0) As Hitex_LayoutView LV_HomePageSection.Tag = Position End Sub و بعد تو رویداد onBind ریسایکلر داخلی Tag رو میگیرم و میفهم که Section چندم هست Sub LV_HomePageSection_onBindViewHolder (Parent As Panel, Position As Int) '* onBind *' Dim LV = Sender As Hitex_LayoutView Dim vt = HomePageItemList.Get(LV.Tag) As HomePageSection End Sub کلا خیلی پیچیده شده ولی خوب جواب داد ممنون
  5. ممنون از پاسخگویی ببینید صفحه اول بازار یا دیجی‌کالا یا ... رو در نظر بگیرید یک ریسایکلر عمودی هست که داره یه سری Section ها رو لود میکنه حالا تو هر کدوم از این Section ها یه ریسایکلر افقی وجود داره من نیاز دارم با استفاده از Tag که به هر کدوم از ریسایکلر های افقی دادم بفهمم که onBind مربوط به کدوم Section هست و دیتا مربوط به همون رو لود کنم ریساکلر افقی تو Globals معرفی نشده و بخاطر همین مستقیم قابل دسترس نیست از طرفی هم این که برای ریسایکلر هر Section یه Event جدا بزاریم منطقی نیست! شاید 100 تا Section لود شد! بهترین کار همون استفاده از Tag هست اما متاسفانه من موفق نشدم! امیدوارم متوجه شده باشید که هدفم چیه در واقع یک ریسایکلر هست که توش یه ریسایکلر دیگه وجود داره و هدف گرفتن Tag اون ریسایکلر Child هست ممنون
  6. سلام و خسته نباشید چطور میشه تو رویداد onBind پَرِِنتِ Parent رو گرفت؟ برای مثال من زمان تعریف کردن Hitex_LayoutView بهش یه تگ میدم حالا تو رویداد onBind میخوام اون تگ رو بخونم Sub Activity_Create(FirstTime As Boolean) Dim LV As Hitex_LayoutView LV.Initializer("LV").ListView.Build LV.Tag = "SomeTag" Activity.AddView(LV,0,0,100%x,100%y) LV.Show End Sub Sub LV_onBindViewHolder (Parent As Panel, Position As Int) Dim temp As Hitex_LayoutView temp = Parent.Parent Log(temp.Tag) End Sub با این کد خطا بر میگرده که پَرِنتِ Parent که میشه همون ریسایکلر اینیشیالایز نیست!