رفتن به مطلب
  • 0

مشکل با scroll و list view


iraj_astara

سوال

سلام خسته نباشید

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

داخل برنامم برای پر کردن list view از آرایه استفاده میکنم و طبق کد زیر list view من از آرایه ها پر میشه ولی با اینکه scroll هم دادم بهش ، اسکرول نمیشه (از کتابخانه SLLVOnScroll استفاده میکنم)

وقتی هم که بدون آرایه Listview رو تک تک پر میکنم ، اسکرول میشه ولی چندین بار هر item گردشی تکرار میشه و از اون خط scroll میزنه بیرون

ممنون میشم راهنمایی کنید مشکلم حل بشه ، خیلی باهاش ور رفتم ولی جواب نداد ، فقط میخوام داده ها در listview طبق آرایه یا به صورت تک تک تعریف بشه و اضافی اون هم scroll بشه

ممنون


Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("Amozesh")


click1.Initialize(Colors.Cyan,15)
click2.Initialize(Colors.Magenta,15)



ListView1.twoLinesLayout.SecondLabel.textcolor=Colors.Black



ListView1.TwoLinesLayout.SecondLabel.TextSize=18
ListView1.TwoLinesLayout.ItemHeight=70dip


Dim Bitmaplist As BitmapDrawable
Bitmaplist.Initialize(LoadBitmap(File.DirAssets,"b1.png"))
ListView1.TwoLinesLayout.Background=Bitmaplist
Bitmaplist.Gravity=Gravity.LEFT
ListView1.twoLinesLayout.SecondLabel.Gravity=Gravity.CENTER




ListView1.twoLinesLayout.Label.Gravity=Gravity.CENTER
ListView1.twoLinesLayout.Label.Typeface=Typeface.LoadFromAssets("byekan.ttf")
ListView1.SingleLineLayout.Label.Typeface=Typeface.LoadFromAssets("byekan.ttf")
ListView1.FastScrollEnabled=True



ListLine1 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")
ListLine2 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")


SLLVOnScroll1.Initialize(ListView1,"ListView1",click1,click2)


For i = 0 To (ListLine1.Length - 1)
ListView1.AddTwoLines2(ListLine1(i), ListLine2(i), i)
Next








End Sub

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

4 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام

دوست خوش اومدید.

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

شنا ایتم ها رئ اضافه کنید و اسکرول رو حذف کنید واسه اسکرولش خود لیست ویو اسکرول میکنه.

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

سلام

دوست خوش اومدید.

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

شنا ایتم ها رئ اضافه کنید و اسکرول رو حذف کنید واسه اسکرولش خود لیست ویو اسکرول میکنه.

خیلی ممنون که جواب دادید

با اینکه اسکرولی که تعریف کردمو پاک کردم، ولی لیست ویو حالت اسکرولی پیدا نمیکنه

وقتی هم که حلقه for اجرا میشه چرا چندین بار item ها تکرار میشن؟؟؟ مثلا 3 تا آیتم دارم ولی مثلا 5 بار هر کدوم تکرار میشن

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

هیچ مشکلی نداره اینجوری ...

Sub Globals
   Private ListView1 As ListView
   Dim ListLine2 As List
   Dim ListLine1 As List
End Sub

Sub Activity_Create(FirstTime As Boolean)
   Activity.LoadLayout("Layout1")
   ListLine1 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")
   ListLine2 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")

   For i = 0 To ListLine1.Size-1
       ListView1.AddTwoLines2(ListLine1.Get(i), ListLine2.Get(i), i)
    Next
End Sub

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

هیچ مشکلی نداره اینجوری ...

Sub Globals
   Private ListView1 As ListView
   Dim ListLine2 As List
   Dim ListLine1 As List
End Sub

Sub Activity_Create(FirstTime As Boolean)
   Activity.LoadLayout("Layout1")
   ListLine1 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")
   ListLine2 = Array As String("s","st","sg","sy","sl","ss","sd","sa","sr","su","sb","sn","sn")

   For i = 0 To ListLine1.Size-1
       ListView1.AddTwoLines2(ListLine1.Get(i), ListLine2.Get(i), i)
    Next
End Sub

بازم ممنون بابت جوابتون ، ولی نشد

سینتکس ، size و get رو نمیشناسه کامپایل کنه

اگه اینجوری بزارم هم گفتمم ، آیتم ها چند بار تکرار میشن با اینکه به جای ListLine1.Length - 1 ، تعداد طول آرایه رو عدد بدم

           For i = 0 To (ListLine1.Length - 1)
       ListView1.AddTwoLines("","بی")
       ListView1.AddTwoLines("","سی")
       ListView1.AddTwoLines("","بی")
       ListView1.AddTwoLines("","یب")
       ListView1.AddTwoLines("","شسی")
       ListView1.AddTwoLines("","بل")
       ListView1.AddTwoLines("","ثقف")
       ListView1.AddTwoLines("","ابل")
                  Next

یه همچین حلقه ای هم تعریف کردم ولی جواب نداد که از تعداد آیتم های بیشتر شد حلقه رو ادامه نده

[color=#141414][font=verdana][i]For i = 0 To 8
[/i][/font][/color]   ListView1.AddTwoLines("","بی")
و...

[color=#141414][font=verdana][i]if l > 8 then[/i][/font][/color]
[b]Exit [/b]
[color=#141414][font=verdana][i]end if[/i][/font][/color]
[color=#141414][font=verdana][i]Next[/i][/font][/color]

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

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...