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

مشکل در استفاده از ultimate listview


میلاد

سوال

سلام دوستان

 

من یه سری دیتا از سرور میگیرم

 

 میخوام توی ultimate listview  نمایش بدم

 

چطور میتونم لیوت لود کنم  و نمایش بدم؟؟ :fekr: 

 

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

 

دوستان اگه کسی سمپل انلاین هم داره ممنون میشم اپلود کنه واسم  :heart: 

 

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

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

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

سلام، روز خوش،

من خودم که تا بحال با Ultimate کار نکردم و نمیدونم به چه شکله. اما کسی رو میشناسم که با دیتابیس آنلاین و آلتیمیت کار کرده، آقای مجید گودرزی هستند، همون که آموزش ساخت شبکه اجتماعی رو قرار دادند. از ایشون بپرسید جواب میدن

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

سلام دوستان.من یه التیمیت دارم که مثل همین دوستمون فقط داده اخرا رو تکرار میکنه.لطفا کمک کنید.

این کد اتصال

        ProgressDialogShow("در حال بروز رسانی اطلاعات...")
        ht_show.Download("http://link/show.php")

و اینم جاب دان

Sub JobDone(Job As HttpJob)
    ProgressDialogHide
    If Job.Success Then
         jp.Initialize(Job.GetString)
         l1 = jp.NextArray
        For i = 0 To l1.Size-1
             m1=l1.Get(i)
            ListView1.AddSingleLine2(m1.Get("date"),m1)
        Next
        
    Else
        ToastMessageShow("خطا در برقراری ارتباط با سرور",False)
    End If
    Job.Release
End Sub

و در اخر التیمیتم

Sub myitem_ContentFiller(ItemID As Long, LayoutName As String, LayoutPanel As Panel, Position As Int)
    Dim lbl1 As Label = LayoutPanel.GetView(0)
    
    lbl1.Text = m1.Get("date")

End Sub

ممنون میشم یکی کمک کنه

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

رفقا ما چند روزه درگیر این لیست ویو هستیم  :fekr: 

 

یکی بگه بیخیال شو   :DD: 

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

سلام دوستان

 

من یه سری دیتا از سرور میگیرم

 

 میخوام توی ultimate listview  نمایش بدم

 

چطور میتونم لیوت لود کنم  و نمایش بدم؟؟ :fekr: 

 

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

 

دوستان اگه کسی سمپل انلاین هم داره ممنون میشم اپلود کنه واسم  :heart: 

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

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

سلام

خدمت شما

Dim list_new_nazarat(11) As List
Dim ulv_new As UltimateListView
Dim stop_new2 As Int = 0

این پنل پایین توی دیزاینر توی اکتیویتی اد میشه
Private panel_new As Panel

این 2 تا واسه لیمیت هست

Dim iSvHeight3 As Int
Dim iOffSet3 As Int = 0




iSvHeight3=10

list_new_nazarat(0).Initialize
list_new_nazarat(1).Initialize
list_new_nazarat(2).Initialize
list_new_nazarat(3).Initialize
list_new_nazarat(4).Initialize


ulv_new.Initialize(0,0,"","ulv_new")
ulv_new.SetPadding(5dip,5dip,5dip,5dip)
ulv_new.DividerHeight=6dip
ulv_new.Color=Colors.RGB(240,240,240)
panel_new.AddView(ulv_new,0,0,100%x,panel_new.Height)


load_nazar






Sub load_nazar


ProgressDialogShow("درحال بارگذاری"&CRLF&"لطفا صبر کنید...")	
download1.Initialize("download1",Me)
download1.PostString("http://zzzzz.ir/zz/zz/zzz.php","limitval2="&iSvHeight3&"&offsetval2="&iOffSet3)
iOffSet3 = iOffSet3 + iSvHeight3


End Sub




Sub JobDone(job  As HttpJob)
ProgressDialogHide

Select Case job.JobName

Case "download1"



Dim total12() As String
total12=Regex.Split("<hr>",job.GetString)

For i =0 To  total12.Length -1  
Dim json As JSONParser
json.Initialize(total12(i))

Dim list12 As List

list12=json.NextArray

list_new_nazarat(0).Add(name)
list_new_nazarat(1).Add(coment)
list_new_nazarat(2).Add(username1)
list_new_nazarat(3).Add(matn_id)
list_new_nazarat(4).Add(comentid)


ulv_new.AddLayout("Layout5"  ,"nazarat_LayoutCreator", "nazarat_ContentFiller", 110dip, True)
ulv_new.AddItem("Layout5"   ,i+(10*stop_new2))		



Next


End Select	

End Sub



من دیگه قسمت ایجاد لای اوت رو نمیگم 
توی سورس اصلی گفته



و برای مقدار دهی به صورت زیر

Dim r_name1 As Label
r_name1.Text=list_new_nazarat(0).get(ItemID)



این هم ساب اسکرول جهت لود ایتم های بیشتر
Sub ulv_new_Scrolled(FirstVisibleItem As Int, VisibleItemCount As Int, TotalItemCount As Int, IsAtTop As Boolean, IsAtBottom As Boolean)


If IsAtBottom =True And FirstVisibleItem > 1 Then
stop_new2 = stop_new2 + 1
load_nazar
End If

End Sub

 

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

در در 1395/06/10, 10:28:33، میلاد گفته است :

سلام 

مشکلم با کمک اقای گودرزی حل شد

خب الان من یه لیوت لود کردم توی ایتم ها -

مشکل جدیدم اینه که ارتفاع ایتم ها رو میخوام به اندازه ارتفاع لیوت بگیرم :fekr: کسی میدونه ؟! 

 

 


Dim Padding As Int = 5dip



اول میای مثل زیر مینویسی


یه لیبل تعریف کنید
Dim l3 As Label
l3.Initialize("")
فونت و سایز رو مشخص کنید
l3.Typeface=Typeface.LoadFromAssets("yekan.ttf")
l3.TextSize=14
مخفیش کنید
l3.Visible=False

در پنل عدد کنید
panel_new.AddView(l3,5dip,5dip,85%x-70dip,50)

یک متغیر اینت
Dim Height4 As Int


l3.Text="متن مورد نظر"
Height4 = su.MeasureMultilineTextHeight(l3,l3.Text) + (Padding * 2)

اینجا به این صورت وارد کنید

ulv_new.AddLayout("Layout5" & Height4 ,"nazarat_LayoutCreator", "nazarat_ContentFiller",Height4 + 35dip, True)
ulv_new.AddItem("Layout5"  & Height4 ,i+(10*stop_new2))		


حالا در قسمتی که لای اوت رو مینویسید 
توی اون ساب
نوشته
LayoutPanel As Panel
اون اندازه ای که بالا درست کردم میاد توی این

Dim l As Label
LayoutPanel.AddView(l,5dip,5dip,100%x - 10dip , LayoutPanel.Height)



	

 

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

در 50 دقیقه قبل، majid08 گفته است :

 

 



Dim Padding As Int = 5dip



اول میای مثل زیر مینویسی


یه لیبل تعریف کنید
Dim l3 As Label
l3.Initialize("")
فونت و سایز رو مشخص کنید
l3.Typeface=Typeface.LoadFromAssets("yekan.ttf")
l3.TextSize=14
مخفیش کنید
l3.Visible=False

در پنل عدد کنید
panel_new.AddView(l3,5dip,5dip,85%x-70dip,50)

یک متغیر اینت
Dim Height4 As Int


l3.Text="متن مورد نظر"
Height4 = su.MeasureMultilineTextHeight(l3,l3.Text) + (Padding * 2)

اینجا به این صورت وارد کنید

ulv_new.AddLayout("Layout5" & Height4 ,"nazarat_LayoutCreator", "nazarat_ContentFiller",Height4 + 35dip, True)
ulv_new.AddItem("Layout5"  & Height4 ,i+(10*stop_new2))		


حالا در قسمتی که لای اوت رو مینویسید 
توی اون ساب
نوشته
LayoutPanel As Panel
اون اندازه ای که بالا درست کردم میاد توی این

Dim l As Label
LayoutPanel.AddView(l,5dip,5dip,100%x - 10dip , LayoutPanel.Height)



	

 

ممنون مجید جان

اما این تاپیک مال خیلی وقت پیشه و اون مشکلات حل شدن

اگه ممکنه به این تاپیک سر بزنید

 

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

این از کد ها

Sub Activity_Create(FirstTime As Boolean)
	'Activity.Color = 0xfff3f3f3
	Activity.LoadLayout("lay")
    down.Initialize("Job",Me)
	
	''ulv initialize
	
	ulv.Initialize(0, 0, "", "ULV")
	ulv.DividerHeight = 0
	ulv.SetStyle(ulv.STYLE_HOLO_LIGHT)
	ulv.SetPadding(5dip, 5dip, 5dip, 5dip)
	Activity.AddView(ulv, 0, 0, 100%x, 100%y - 70dip)
	ulv.AddLayout("CityCountry", "Item_LayoutCreator", "Item_ContentFiller", ItemHeight, True)
	
    

	
End Sub
Sub JobDone(job As HttpJob)
	If job.Success = True Then
ProgressDialogHide
	If job.JobName = "Job" Then
		Dim rep As String
		rep = job.GetString
		Dim first() As String = Regex.Split("<br>",rep)
		
		For i = 0 To first.Length-1
		Dim joda() As String = Regex.Split("#",first(i))
	    a=joda(1)
		ToastMessageShow(a,False)
		b=joda(3)
		c=joda(4)
         
		 		ulv.AddItem("CityCountry", i)


		Next
		
	End If	
	End If
End Sub
Sub Item_ContentFiller(ItemID As Long, LayoutName As String, LayoutPanel As Panel, Position As Int)
'	'Sets the text of the two labels
'	

	
	Dim lbl1 As Label = LayoutPanel.GetView(0)
	Dim lbl2 As Label = LayoutPanel.GetView(1)

	lbl1.Text = a
	lbl2.Text = b

	
End Sub

به نظر من ! مشکل از ساب 

Sub Item_ContentFiller(ItemID As Long, LayoutName As String, LayoutPanel As Panel, Position As Int)

این ساب یه پوزشن رو برمیگردونه

 

من ازش استفاده نکردم - فک کنم به خاطر همینه اخرین داده رو تکرار میکنه

 

نمیدونم کدوم متغیر رو برابر مقدار پوزیشن بدم تا همه ی داده ها رو نشون بده

 

شایدم مشکل از یه جا دیگه باشه!

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

این از کد ها

Sub Activity_Create(FirstTime As Boolean)
	'Activity.Color = 0xfff3f3f3
	Activity.LoadLayout("lay")
    down.Initialize("Job",Me)
	
	''ulv initialize
	
	ulv.Initialize(0, 0, "", "ULV")
	ulv.DividerHeight = 0
	ulv.SetStyle(ulv.STYLE_HOLO_LIGHT)
	ulv.SetPadding(5dip, 5dip, 5dip, 5dip)
	Activity.AddView(ulv, 0, 0, 100%x, 100%y - 70dip)
	ulv.AddLayout("CityCountry", "Item_LayoutCreator", "Item_ContentFiller", ItemHeight, True)
	
    

	
End Sub
Sub JobDone(job As HttpJob)
	If job.Success = True Then
ProgressDialogHide
	If job.JobName = "Job" Then
		Dim rep As String
		rep = job.GetString
		Dim first() As String = Regex.Split("<br>",rep)
		
		For i = 0 To first.Length-1
		Dim joda() As String = Regex.Split("#",first(i))
	    a=joda(1)
		ToastMessageShow(a,False)
		b=joda(3)
		c=joda(4)
         
		 		ulv.AddItem("CityCountry", i)


		Next
		
	End If	
	End If
End Sub
Sub Item_ContentFiller(ItemID As Long, LayoutName As String, LayoutPanel As Panel, Position As Int)
'	'Sets the text of the two labels
'	

	
	Dim lbl1 As Label = LayoutPanel.GetView(0)
	Dim lbl2 As Label = LayoutPanel.GetView(1)

	lbl1.Text = a
	lbl2.Text = b

	
End Sub

به نظر من ! مشکل از ساب 

Sub Item_ContentFiller(ItemID As Long, LayoutName As String, LayoutPanel As Panel, Position As Int)

این ساب یه پوزشن رو برمیگردونه

 

من ازش استفاده نکردم - فک کنم به خاطر همینه اخرین داده رو تکرار میکنه

 

نمیدونم کدوم متغیر رو برابر مقدار پوزیشن بدم تا همه ی داده ها رو نشون بده

 

شایدم مشکل از یه جا دیگه باشه!

مشکل از این دوتا خط هست

    lbl1.Text = a

    lbl2.Text = b

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

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

سلام 

مشکلم با کمک اقای گودرزی حل شد

خب الان من یه لیوت لود کردم توی ایتم ها -

مشکل جدیدم اینه که ارتفاع ایتم ها رو میخوام به اندازه ارتفاع لیوت بگیرم :fekr: کسی میدونه ؟! 

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

بایگانی شده

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

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

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