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

گرفتن ایدی ایتم انتخاب شده


H4N9_0V3R

سوال

سلام

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

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

دوستان لطفا راهنمایی کنید

ممنون

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

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

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

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

AddTwoLinesAndBitmap2

پارامتر آخرش میشه Return Vlue  که باید به این شکل استفاده کنید


 
RLV.AddTwoLinesAndImage2(tl.Second,tl.Three, File.Combine(File.DirAssets,"26.png"),t1.first)

 

بعد رویداد کیلک رو به این شکل تغییر بدید

Sub RLV_ItemClick (Position As Int, title As String, ReturnValue As Object)

	ExecuteRemoteQuery("SELECT * FROM tbl WHERE id='" & ReturnValue & "'", "userinfo")
End Sub

 

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

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

در 9 دقیقه قبل، abstruse گفته است :

سلام

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

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

دوستان لطفا راهنمایی کنید

ممنون

سلام 

هر سطر در دیتابیس شما یک id منحصر بفرد داره اونو با استفاده از شی کرسر Cursor.getint  یا cursor.getstring  

lv.AddSingleLine2(cursor.GetString("ItemName"),cursor.GetInt("ID"))

پارامتر دوم Return Value می باشد که وقتی بروی ایتمهای لیست ویو کلیک میشه این مقدار در رویداد ListView_ItemClick فراخوانی میشه . به این صورت

Sub lv_ItemClick (Position As Int, Value As Object)
dim cursor as cursor
	sql1.Initialize(File.DirInternal,"db.db",True)
		cur1 = sql1.ExecQuery("Select * from Mytbl where Id=" & value)
	cursor.position=0
		ToastMessageShow(cur1.GetString("ITEM"),False)
End Sub

 

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

در 35 دقیقه قبل، devil_v9 گفته است :

سلام 

هر سطر در دیتابیس شما یک id منحصر بفرد داره اونو با استفاده از شی کرسر Cursor.getint  یا cursor.getstring  


lv.AddSingleLine2(cursor.GetString("ItemName"),cursor.GetInt("ID"))

پارامتر دوم Return Value می باشد که وقتی بروی ایتمهای لیست ویو کلیک میشه این مقدار در رویداد ListView_ItemClick فراخوانی میشه . به این صورت


Sub lv_ItemClick (Position As Int, Value As Object)
dim cursor as cursor
	sql1.Initialize(File.DirInternal,"db.db",True)
		cur1 = sql1.ExecQuery("Select * from Mytbl where Id=" & value)
	cursor.position=0
		ToastMessageShow(cur1.GetString("ITEM"),False)
End Sub

 

داداش از دیتابیس انلاین استفاده کردم

همین کاری رو هم که گفتی انجام دادمش ولی ارور میده

java.lang.NullPointerException: Attempt to read from field 'java.lang.String ir.a.a.main$_three.First' on a null object reference

 

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

در 4 دقیقه قبل، abstruse گفته است :

داداش از دیتابیس انلاین استفاده کردم

همین کاری رو هم که گفتی انجام دادمش ولی ارور میده


java.lang.NullPointerException: Attempt to read from field 'java.lang.String ir.axontech.textmusic.main$_three.First' on a null object reference

 

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

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

در 46 دقیقه قبل، devil_v9 گفته است :

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

از mysql

ببین من از ریسایکرویو برای لیست استفاده کردم

و این هم کد های رویداد کلیک

Sub RLV_ItemClick (Position As Int, title As String, ReturnValue As Object)

	ExecuteRemoteQuery("SELECT * FROM tbl WHERE id='" & ReturnValue & "'", "userinfo")

End Sub

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

			Case "userinfo"

				l = parser.NextArray
				If l.Size = 0 Then
					ToastMessageShow("چیزی دریافت نشد",True)
				Else
					Dim m As Map
					m = l.Get(0)
					titles=m.Get("name")
					text=m.Get("text")
					link=m.Get("link")
					CallSubDelayed2(Con,"name",titles)
					CallSubDelayed2(Con,"text",text)
					CallSubDelayed2(Con,"links",link)
					StartActivity(Con)
				End If

 

اومدم پارامتر ReturnValue رو گرفتم و روی هر ایتمی کلیک میکنم بهم مقدار null رو میده و اون خطا هم که بم میداد همین بوده اگه اشتباه نکنم

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

در ۱ ساعت قبل، abstruse گفته است :

از mysql

ببین من از ریسایکرویو برای لیست استفاده کردم

و این هم کد های رویداد کلیک


Sub RLV_ItemClick (Position As Int, title As String, ReturnValue As Object)

	ExecuteRemoteQuery("SELECT * FROM tbl WHERE id='" & ReturnValue & "'", "userinfo")

End Sub

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


			Case "userinfo"

				l = parser.NextArray
				If l.Size = 0 Then
					ToastMessageShow("چیزی دریافت نشد",True)
				Else
					Dim m As Map
					m = l.Get(0)
					titles=m.Get("name")
					text=m.Get("text")
					link=m.Get("link")
					CallSubDelayed2(Con,"name",titles)
					CallSubDelayed2(Con,"text",text)
					CallSubDelayed2(Con,"links",link)
					StartActivity(Con)
				End If

 

اومدم پارامتر ReturnValue رو گرفتم و روی هر ایتمی کلیک میکنم بهم مقدار null رو میده و اون خطا هم که بم میداد همین بوده اگه اشتباه نکنم

 

دوست من شما وقتی داری شی ریساکلر ویو رو مقدار دهی می کنید باید به پارامتر Return value  مقدار بدید که بعد در رویداد RVL_click  از اون مقدار استفاده کنید. این قسمت از کدتون مشکل نداره قسمتی که RVL  رو مقدار دهی می کنید کدش رو قرار بدید

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

در 13 ساعت قبل، devil_v9 گفته است :

 

دوست من شما وقتی داری شی ریساکلر ویو رو مقدار دهی می کنید باید به پارامتر Return value  مقدار بدید که بعد در رویداد RVL_click  از اون مقدار استفاده کنید. این قسمت از کدتون مشکل نداره قسمتی که RVL  رو مقدار دهی می کنید کدش رو قرار بدید

	 Type Three (First As int, Second As String,Three As String)

 در داخل جاب دان  ایدی رو داخل این متغیر قرار دادم

					tl.First = m.Get("id") 

داخل  RLV هم این کد رو قرار دادم

Sub RLV_ItemClick (Position As Int, title As String, ReturnValue As Object)
	Dim tl As Three
	tl = ReturnValue
	ExecuteRemoteQuery("SELECT * FROM tbl WHERE id='" & tl.First & "'", "userinfo")
End Sub

 

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

شما مثکه متوجه منظور من نشدید ! اون قسمی از کدتون که اطلاعات دریافتی که بشکل Json  دریافت می کنید و درون شی ریساکلر قرار میدین رو باید اینجا قرار بدید 

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

در 12 دقیقه قبل، devil_v9 گفته است :

شما مثکه متوجه منظور من نشدید ! اون قسمی از کدتون که اطلاعات دریافتی که بشکل Json  دریافت می کنید و درون شی ریساکلر قرار میدین رو باید اینجا قرار بدید 

منظورتون این قسمته؟

				Dim DataList As List
				Dim m As Map
				DataList = parser.NextArray 			
			For i = 0 To DataList.Size - 1
					m = DataList.Get(i)
					Dim tl As Three
					tl.First = m.Get("id") 
					tl.Second = m.Get("name")
					tl.Three = m.Get("family")
					RLV.Gravity = Gravity.RIGHT
		
					RLV.AddTwoLinesAndImage(tl.Second,tl.Three, File.Combine(File.DirAssets,"26.png"))
				Next
				RLV.FastScroller
				RLV.Show(RLV.ANIMATION_ALPHAIN,1000,False)

 

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

در ۱ ساعت قبل، devil_v9 گفته است :

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

AddTwoLinesAndBitmap2

پارامتر آخرش میشه Return Vlue  که باید به این شکل استفاده کنید



 

RLV.AddTwoLinesAndImage2(tl.Second,tl.Three, File.Combine(File.DirAssets,"26.png"),t1.first)


 

بعد رویداد کیلک رو به این شکل تغییر بدید


Sub RLV_ItemClick (Position As Int, title As String, ReturnValue As Object)

	ExecuteRemoteQuery("SELECT * FROM tbl WHERE id='" & ReturnValue & "'", "userinfo")
End Sub

 

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

مرسی  داداش درست شد:malih:♥

کتابخونه Hitex_RecyclerView       هستش که اقای صادق نامنی ساختن

 

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

بایگانی شده

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

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

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