复制代码代码如下:
الملف النهائي ImageFile = ملف جديد (getCachedir (). getPath () + "/img/" + p.image) ؛
Image.setVisibility (view.gone) ؛
View.FindViewById (
(Asynctask جديد <void ، void ، bitmap> () {
@تجاوز
محمية Bitmap doinbackground (void ... params) {
يحاول {
صورة نقطية
if (! imagefile.exists () || imagefile.length () == 0) {
Image = bitmapfactory.decodestream (عنوان URL جديد (
"http://example.com/images/"
+ p.image) .openstream ()) ؛
Image.compress (bitmap.compressformat.jpeg ، 85 ،
FileOutputStream جديد (ImageFile)) ؛
Image.Recycle () ؛
}
Image = bitmapfactory.decodefile (imagefile.getpath () ،
صورة نقطية) ؛
إرجاع الصورة ؛
} catch (malformedurlexception ex) {
// TODO AUTO CATCH BLOCK
ex.printStackTrace () ؛
العودة لاغية.
} catch (ioException ex) {
// TODO AUTO CATCH BLOCK
ex.printStackTrace () ؛
العودة لاغية.
}
}
@تجاوز
باطل محمي onpostexecute (صورة صورة نقطية) {
if (view.getTag ()! = p) // تم إعادة تدوير العرض.
يعود؛
view.findviewbyid (r.id.imageLoading).
view.gone) ؛
view.findviewbyid (r.id.image)
.
((ImageView) view.findviewbyid (r.id.image))
.SetImageBitMap (صورة) ؛
}
}).ينفذ()؛