آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

پروژه ی مارکت، بدون دانلود عکس (حل شده) + آموزش

SaeiD-as  10 سال پیش  10 سال پیش
0 0

سلام دوستان

معمولا در برنامه های مارکت (مانند بازار) صرفا عکس برنامه نشون داده میشه و دیگه داخل sdCard ذخیره نمیشه، استاد در پروژه مارکت ابتدا عکس هارو دانلود و بعد داخل برنامه نشونشون میدن

راه حلش چیه که برنامه بدون دانلود عکس و ذخیره ی اون عکسو نشون بده؟

0 0
این سوال منم هستش ممنون میشم یکی از دوستان پاسخ بده (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
SaeiD-as  10 سال پیش
+3 0

برای نشون دادن عکس داخل برنامه بدون دانلود اون، کارهای زیر رو انجام میدیم:

در ابتدا کلیه کلاس هایی که برای دانلود به پروژه اضافه کرده بودیم رو پاک میکنیم چون دیگه کاریشون نداریم، (کلاسهای DownloadRequest، DownloadManager، OnDownloadCompleteListener)

یه کلاس جدید بنام DownloadImageTask میسازیم و کدهای زیر رو داخلش قرار می دیم:

public class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {

    ImageView bmImage;


    public DownloadImageTask(ImageView bmImage) {
        this.bmImage = bmImage;
    }


    protected Bitmap doInBackground(String... urls) {
        String urldisplay = urls[0];
        Bitmap mIcon11 = null;
        try {
            InputStream in = new java.net.URL(urldisplay).openStream();
            mIcon11 = BitmapFactory.decodeStream(in);
        }
        catch (Exception e) {
            Log.e("Error", e.getMessage());
            e.printStackTrace();
        }
        return mIcon11;
    }


    protected void onPostExecute(Bitmap result) {
        bmImage.setImageBitmap(result);
    }
}

حالا فرض می کنیم ID عکسمون imageView باشه، هرجایی خواستیم نشونش بدیم بصورت زیر تعریف می کنیم:

 ImageView imageView = (ImageView) findViewById(R.id.imageView1);
 new DownloadImageTask(imageView).execute("http://www.kelidestan.com/" + url عکس);

url عکس هم اگه داخل لیست ویو تعریفش کنیم بصورت item.imgLogo تعریف میشه

موفق باشید

منبع

0 0
من قبلا از این متد استفاده کردم جواب داده (10 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .