رفتن به مطلب

سورس نمایش اطلاعات Json آنلاین با AriaListView + AriaAsynkTask


امین شاهدی

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

سلام ، 

 

کارایی این سورس که از عنوان تاپیک پیداست و نیازی به توضیح نیست

 

* قبل از اجرا ریسورس های آریالیست ویو رو کنار سورس قرار بدین

 

AriaListView + AriaAsynkTask.zip

 

task_listview.PNG

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

  • 1 ماه بعد...

سلام

خسته نباشید

دلیل این ارور چیه؟(در داخل لوگ ها نمایش داده میشه و لیست ها افزوده نمیشه)

 

AriaAsynkTask Error : wrong number of arguments; expected 4, got 1

در ضمن از AriaAdapterB4aLayout استفاده میکنم

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

سلام

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

کم یا زیاد بودنش رو چک کنید.

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

در 1 ساعت قبل، milad19 گفته است :

سلام

خسته نباشید

دلیل این ارور چیه؟(در داخل لوگ ها نمایش داده میشه و لیست ها افزوده نمیشه)

 


AriaAsynkTask Error : wrong number of arguments; expected 4, got 1

در ضمن از AriaAdapterB4aLayout استفاده میکنم

برنامه رو باید روی حالت Release ران بگیرید ، زمانی که با دیباگ ران بگیرید این مشکل با AsynkTask پیش میاد

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

سلام

وقت بخیر

با کتابخانه AriaAsynkTask چجوری میشه یه مقدار فرستاد و نتیجه رو گرفت؟(منظورم همون poststring خودمون هست)

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

سلام

یه سوال

عملیاتی که توی postexecute انجام میشه، توی هسته اصلیه؟

 

و یک اشکال

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

منتها آریالیست ویو توی برنامه م یه مقدار لگ داره و اصلا نرم اسکرول نمیشه.
ازطرف دیگه، اسکرول که میکنم، به شدت حجم اشغالی رم افزایش پیدا میکنه و تا نزدیک 300مگ هم میره!!
توی تصویر زیر mdh1 برنامه من هست

نکته ش اینه که لیست که ظاهر میشه، حجم اشغالی، حدود 30 مگ هست، و بعد از اولین اسکرول (به عنوان مثال برای تصویر زیر، یه لیست 250 آیتمی بوده، که هیچ تصویری هم توی لیست بارگذاری نمیشه!) حدود 100 مگ فضای اشغال شده افزایش پیدا میکنه!

 نمیفهمم مشکل از چیه؟

توضیح اینکه من داده های جیسون رو با asynctask میگیرم و جداش که کردم میریزم توی یه type و داده های لیست رو از اون میخونم

 

Capture.JPG

Sub alv_getview (rowView As Panel,Position As Int)

	Dim p2 As Panel
	p2.Initialize("")
	rowView.AddView(p2,0%x,0,100%x,10%y+10dip)
	p2.LoadLayout("PlyLst")

lbl1.text=fileData.name.get(position)
lbl2.text=fileData.size.get(position)
lbl3.text=fileData.title.get(position)

End sub

البته با دیتابیس هم این کار رو کرده م منتها فرق چندانی نداشته!

 

 

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

ببینین آریا لیست ویو چیز خاصی نیست که بخواد حجم رم و ... بگیره ، دقیقا همون لیست ویو native و همینطور ادپتر native که هیچ چیز خاصی نداره ، فقط زمان getView ویو پنل شما رو نمایش میده و هیچ کد خاصی نداره ، اگه میبینین در این مورد حجم  اشغالی  و ... زیاد میشه ممکنه از لیوت های بیسیک باشه که به طور متوالی نمایش داده میشه ، چون ساختار لیوت های بیسیک کلا فرق دارن با لیوت های xml و هربار که لیوت رو لود میکنین لیوت ساخته شده از assets ساخته میشه و ... و همین ممکنه حجم رو بالا ببره ، بهتره یه بار با لیوت xml امتحان کنین و با کتابخونه XmlLayoutBuilder اون ها رو نمایش بدین ، لیوت رو توی پوشه layout توی ریسورس های برنامه بزارین و کد های لود و ... تقریبا به صورت زیره ، من تست نکردمشون، بر اساس نیاز خودتون تغییرشون بدین و تست کنین و اگه موردی بود بگین تا مشکلاتش برطرف شه

Sub alv_getview (rowView As Panel,Position As Int)
	
xmllayoutBuilder.LoadXmlLayout(rowView,"l1")
Dim lbl1 As Label = findViewById(rowView,"textview1")
lbl1.Text = Position

Dim imageView As ImageView = findViewById(rowView,"img_view_1")
ariaGlide.Load(pics(Position)).AsBitmap.Resize(50,50).IntoImageView(imageView)

End Sub

Sub findViewById(parent As Panel,id As String) As View
	Dim resID As Int = xmllayoutBuilder.GetResourceId("id",id)
	Dim parentJO As JavaObject = parent
	Return parentJO.RunMethod("findViewById",Array(id))
End Sub

 

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

در 5 ساعت قبل، امین شاهدی گفته است :

ببینین آریا لیست ویو چیز خاصی نیست که بخواد حجم رم و ... بگیره ، دقیقا همون لیست ویو native و همینطور ادپتر native که هیچ چیز خاصی نداره ، فقط زمان getView ویو پنل شما رو نمایش میده و هیچ کد خاصی نداره ، اگه میبینین در این مورد حجم  اشغالی  و ... زیاد میشه ممکنه از لیوت های بیسیک باشه که به طور متوالی نمایش داده میشه ، چون ساختار لیوت های بیسیک کلا فرق دارن با لیوت های xml و هربار که لیوت رو لود میکنین لیوت ساخته شده از assets ساخته میشه و ... و همین ممکنه حجم رو بالا ببره ، بهتره یه بار با لیوت xml امتحان کنین و با کتابخونه XmlLayoutBuilder اون ها رو نمایش بدین ، لیوت رو توی پوشه layout توی ریسورس های برنامه بزارین و کد های لود و ... تقریبا به صورت زیره ، من تست نکردمشون، بر اساس نیاز خودتون تغییرشون بدین و تست کنین و اگه موردی بود بگین تا مشکلاتش برطرف شه


Sub alv_getview (rowView As Panel,Position As Int)
	
xmllayoutBuilder.LoadXmlLayout(rowView,"l1")
Dim lbl1 As Label = findViewById(rowView,"textview1")
lbl1.Text = Position

Dim imageView As ImageView = findViewById(rowView,"img_view_1")
ariaGlide.Load(pics(Position)).AsBitmap.Resize(50,50).IntoImageView(imageView)

End Sub

Sub findViewById(parent As Panel,id As String) As View
	Dim resID As Int = xmllayoutBuilder.GetResourceId("id",id)
	Dim parentJO As JavaObject = parent
	Return parentJO.RunMethod("findViewById",Array(id))
End Sub

 

سلام و ممنون

اما من xml کار نکرده م و توی این موقعیت اصلا نمیتونم تمرکز کنم برای یادگیری یه بحث جدید.


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

بنده به محض اینکه حدود مثلا 100 تا آیتم رو اسکرول میکنم، 100 مگ اضافه میشه به فضای اشغال شده رم. اون عکسی که گذاشتم دقیقا بعد از اسکرول حدود 100 آیتم بود. لایوت من هم همونطور که توی پست قبل نوشتم، سه تا لیبل هست با یه پنل زیرشون. و قاعدتا نباید اینطوری باشه. واقعا عجیبه.

 

ضمنا ممنون میشم سوال اولم توی پس قبل رو هم جواب بدید...

 

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

در در 1395/08/08, 15:09:04، امین شاهدی گفته است :

ببینین آریا لیست ویو چیز خاصی نیست که بخواد حجم رم و ... بگیره ، دقیقا همون لیست ویو native و همینطور ادپتر native که هیچ چیز خاصی نداره ، فقط زمان getView ویو پنل شما رو نمایش میده و هیچ کد خاصی نداره ، اگه میبینین در این مورد حجم  اشغالی  و ... زیاد میشه ممکنه از لیوت های بیسیک باشه که به طور متوالی نمایش داده میشه ، چون ساختار لیوت های بیسیک کلا فرق دارن با لیوت های xml و هربار که لیوت رو لود میکنین لیوت ساخته شده از assets ساخته میشه و ... و همین ممکنه حجم رو بالا ببره ، بهتره یه بار با لیوت xml امتحان کنین و با کتابخونه XmlLayoutBuilder اون ها رو نمایش بدین ، لیوت رو توی پوشه layout توی ریسورس های برنامه بزارین و کد های لود و ... تقریبا به صورت زیره ، من تست نکردمشون، بر اساس نیاز خودتون تغییرشون بدین و تست کنین و اگه موردی بود بگین تا مشکلاتش برطرف شه


Sub alv_getview (rowView As Panel,Position As Int)
	
xmllayoutBuilder.LoadXmlLayout(rowView,"l1")
Dim lbl1 As Label = findViewById(rowView,"textview1")
lbl1.Text = Position

Dim imageView As ImageView = findViewById(rowView,"img_view_1")
ariaGlide.Load(pics(Position)).AsBitmap.Resize(50,50).IntoImageView(imageView)

End Sub

Sub findViewById(parent As Panel,id As String) As View
	Dim resID As Int = xmllayoutBuilder.GetResourceId("id",id)
	Dim parentJO As JavaObject = parent
	Return parentJO.RunMethod("findViewById",Array(id))
End Sub

 

دقیقا همونطور که گفتید، اضافه شدن لایه ها، حجم رو اضافه میکنه و مربط به نوع فراخوانی اطلاعات روی اون ویوها نمیشه.
چون من یه بار بدون اطلاعات، و یه بار بدون loadlayout برنامه رو اجرا کردم، دقیقا با حذف loadlayout میزان رم دیگه اون افزایش قابل توجه رو نداشت!

ولی سوال اینه که، چه تفاوتی داره، لایه های من با لایه هایی که توی سمپل های آقای شاهدی هست؟من یه دونه پنل و سه تا لیبل و یه دکمه، داخلش استفاده کرده‌م.
ظاهرا تا حالا همچین مشکلی برای دیگران پیش نیومده بوده!

نهایتا ممنون میشم یه نمونه فایل xml برام بذارید که داخلش پنل و لیبل و باتن استفاده شده باشه

 

Capture.JPG

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

در 18 دقیقه قبل، mirsedali گفته است :

دقیقا همونطور که گفتید، اضافه شدن لایه ها، حجم رو اضافه میکنه و مربط به نوع فراخوانی اطلاعات روی اون ویوها نمیشه.
چون من یه بار بدون اطلاعات، و یه بار بدون loadlayout برنامه رو اجرا کردم، دقیقا با حذف loadlayout میزان رم دیگه اون افزایش قابل توجه رو نداشت!

ولی سوال اینه که، چه تفاوتی داره، لایه های من با لایه هایی که توی سمپل های آقای شاهدی هست؟من یه دونه پنل و سه تا لیبل و یه دکمه، داخلش استفاده کرده‌م.
ظاهرا تا حالا همچین مشکلی برای دیگران پیش نیومده بوده!

نهایتا ممنون میشم یه نمونه فایل xml برام بذارید که داخلش پنل و لیبل و باتن استفاده شده باشه

 

 

سلام

یاد گرفتن xml کار سختی نیس اگرم فرصت این کار رو ندارین 

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

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

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

سلام

یاد گرفتن xml کار سختی نیس اگرم فرصت این کار رو ندارین 

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

میتونید یه نمونه برای من بذارید، پنل، لیبل و باتن، سعی میکنم کم و زیاد کردنش رو یاد بگیرم

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

در 21 دقیقه قبل، mirsedali گفته است :

میتونید یه نمونه برای من بذارید، پنل، لیبل و باتن، سعی میکنم کم و زیاد کردنش رو یاد بگیرم

بفرمایین

استاد عزیزم آقای اسکندری زحمتش رو کشیدن

http://s1.picofile.com/file/8263312526/AriaListViewExampleNew.zip.html

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

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

گفتم زودتر اعلام کنم که دوستان بیش از این به زحمت نیفتن!:DD:

 

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

در 41 دقیقه قبل، mirsedali گفته است :

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

گفتم زودتر اعلام کنم که دوستان بیش از این به زحمت نیفتن!:DD:

 

فونت هایی که استفاده کرده بودم، b mitra و adobe arabic بود که عمده افزایش رم به خاطر دومی بود
بر هر دوشون ل ع ن ت! دومی بیشتر! :cheshmak:

 

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

 

دوستان به نظرتون این مشکل یه باگ نیست؟! حجم اشغالی رم توسط یه برنامه، به خاطر استفاده از یه فونت توی لیست، از 30 مگ میرسه به 280 مگ!!!

 

ب.ن: هر فونتی اختصاص بدم به لیبل، بالاخره یه مقدار افزایش رم رو داره، حتی فونتهای پیشفرض خود دیزاینر! فقط حالت دیفالت هست که هیچ افزایش رمی رو باعث نمیشه

استاتید نظری ندارن در این مورد؟

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

سلام خدمت همه عزیزان

آدرس زیر رو چجوری باید Run کرد؟

http://site.com/test.php?id=4

در واقع می خوام با AriaAsynkTask یک مقدار رو post کنم و نتیجش رو نمایش بدم

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

بایگانی شده

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

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

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