چند سوال مربوط به Picasso

پرسیده شده
فعالیت 1018 روز پیش
دیده شده 665 بار
0

سلام

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

 

سوال بعد اینکه اگه ما یه uri رو همینطوری از اینترنت برداریم و داخل load بذاریم اگه بعدا اون ادرس به هر دلیلی تغییر کنه یا کلا حذف بشه تکلیف برنامه ی ما چی میشه؟فکنم باید از یک جای مطمن عکس برداشت یا از سایت خودمون که مشکلی پیش نیاد

 

و سوال بعد

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

فایل پیوست

1
حذف شده

سلام و احترام

 

وقتی تصویری توسط لایبرری پیکاسو لود میشه پیکاسو تصویر شما رو کش میکنه(پس هر بار عمل دانلود انجام نمیشه)

 

ما هیچوقت همینطور مستقیم url ی رو از سایت های مختلف قرار نمیدهیم که چنین مشکلی برامون پیش بیاد. (این سرفصل جنبه اموزشی داره)

بلکه شما میاید به api تون متصل میشید و value مربوط به فیلد image که یک url هست رو به متد load پیکاسو میدید و پیکاسو زحمت لود کردنش رو براتون میشه.

اینکه api چی هست و چطوری میتونیم به api متصل بشیم و اطلاعاتمون رو هم دریافت کنیم در سرفصل های اینده به اون پرداخته شده.

 

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

فایل پیوست

پوریا شفیعی

توسط

پوریا شفیعی

21 تیر 00

حذف شده
خیلی ممنون از پاسخ های خوبتون که هر دفعه میدید سوال سوم مشکلم حل شد مرسی
حذف شده
?
پوریا شفیعی

22 تیر 00

0
حذف شده

سلام وقت بخیر

سوال اول: این لایبرری عکس دانلود شده رو یک مدت خاص کَش میکنه برای تست این موضوع بعد دانلود شدن عکس اینترنت رو قطع کنید و وارد برنامه بشید مشاهده میکنید که برنامه عکس رو نمایش میده

سوال دوم: شما با متد placeholder میتونید یک عکس جایگزین انتخاب کنید که در صورت دانلود نشدن یا موجود نبودن اون عکس به هر دلیلی این عکس جایگزین نمایش داده بشه

سوال آخر: با استفاده از دیباگینگ مشکل پروژتونو پیدا کنید یا از ارور داخل logcat یک شات بدین ولی بخوام روال کار رو به صورت کلی بگم روی button یک clicklistener سِت کنید وقتی روی button کلیک بشه این interface صدا زده میشه داخل این متد شما باید رشته داخل EditText رو دریافت کنید نه خارج از این متد. بعد از دریافت با استفاده از picasso دانلودش کنید و روی image view سِت کنید البته قبل از دریافت url از EditText عمل validation رو با یک if انجام بدین که برنامتون به مشکل نخوره

فایل پیوست

حذف شده
سلام میلاد عزیز ممنون از راهنمایی خوبت مربوط به سوال سوم مشکلم حل شد میشه دلیلش رو توضیح بدی؟ من string داخل edit text رو بیرون از متد گرفتم مشکل چیه که ارور میده؟
حذف شده
خواهش میکنم وقتی Activity ساخته میشه بلافاصله دارین متن داخل EditText که چیزی داخلش نیست رو میگیرن و داخل متد onclick اون رو میخواین دانلود کنید! در واقع هر url یی که داخل EditText قرار بدین استفاده نمیشه چرا؟ چون دیگه دریافتش نمیکنید وقتی روی button زده میشه. شما فقط یک بار اونم زمانی که Activity ساخته شده دریافت کردین. مشکلتون این بود
حذف شده
میشه یک بار دیگه توضیح بدید متوجه نشدم ممنون
0
حذف شده

متد oncreate فقط یکبار اجرا میشه توی این متد شما اومدین ویوهاتونو دریافت کردین بعد از اون اومدین متن داخل EditText رو دریافت کردین که چیزی داخلش نیست چرا؟ چون توی این متد یعنی oncreate ویو Activity ساخته میشه و کاربر هنوز چیزی وارد EditText نکرده و بصورت پیش فرض خالیه و در نهایت یک listener سِت کردین که هر وقت روی button کلیک شد یک عملی اتفاق بیوفته خوب دقیقا اینجا کار بلاک oncreate تموم شد یعنی قرار نیست بلاک oncreate دوباره اجرا بشه تا متن داخل EditText رو بگیرین.
فقط اون callback یی که برای button نوشتین در صورت کلیک کردن کاربر روی button دوباره اجرا میشه یعنی داخل بلاک onClick که توی این بلاک شما نیومدین متن جدید داخل EditText رو بخونید اومدین اون متنی که قبلا دریافت کرده بودینو استفاده کردین که در واقع EditText خالی بود و هیچ متنی وجود نداشت

فایل پیوست

حذف شده
اها فهمیدم خیلی ممنونم امیدوارم موفق باشید
0
حذف شده

سلام وقت بخیر من درباره سوالات گفتم تجربه خودم بگم چون همین تمرین انجام دادم برای خودم ببینید وقتی url تعریف میگنید چون مقدار خالی داره مقداری ارسال نمیکنه با یک Toast ساده میشه مقدارش بگیرید خود مقداد edittext استفاده کنید نمایش میده

فایل پیوست

Mohmmad Rasoul Abdi

توسط

Mohmmad Rasoul Abdi

22 تیر 00

حذف شده
از اینکه تجربه ات رو به اشتراک گذاشتی ممنونم
پوریا شفیعی

23 تیر 00