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

ProgressBar در WebServiceModule

Pouya Asgharnejad Tehran  11 سال پیش  11 سال پیش
+1 0

با سلام؛

من در کلاس WebServiceModule برای اجرای کد ها با تکنیک چند نخی از AsyncTask استفاده میکنم.

حالا میخواهم قبل از اجرای کد ها (onPreExecute) تا بعد از اجرای کد ها (onPostExecute) یک progressBar نشان بدهم؛اما کلاسWebServiceModule از اکتیویتی extends نشده است و من نمیتوانم از آن به عنوان Context برای progressBar استفاده کنم.

به نظر شما راه حل چیست؟؟؟

 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
مجتبی یگانه  11 سال پیش
+1 0

در آموزش تصاویر پر حجم آنلاین استاد چیز مشابهی رو آموزش داند

در اونجا نیاز هست یک یک imageView وقتی کار Thread تموم شد ، setImage بشه ، بنابراین مشکل اساسی این بود که در یک کلاس به نام Downloader که از extends Object شده ، چیزی به اسم imageView وجود نداشت ! ، پس استاد تصمیم به ساخت یک Struct Download گرفتم که به این شکل بود

class structDownload{
public String URL;
public ImageView imageview;
}

 در Downloader هم میگیم هر url ای که دانلود شد ، فایل اش رو روی imageview قرار بده

شما برای هندل کردن یک پروگرس بار ، کافیه ساختارتون رو به این شکل تغییر بدید (خودم تست کردم جواب میده) 

 class structDownload{
    public String URL;
public imageView imageview;
public progressBar bar;
}
+1 0
البته باید به دو مورد اشاره کنم: 1)منظورتونو متوجه نشدم؛اگه یک مثال بزنید ممنون میشم. 2)با عرض پوزش:منظور من ProgressDialog است. (11 سال پیش)
+1 0
لینک (11 سال پیش)
+1 0
متاسفانه حل نشد؛هم از Enhanced و هم از Activity استفاده کردم؛ شاید چون این کد در AsyncTask که در این کلاس هست مشکل پیش آمده... نظرتون چیه؟؟؟ (11 سال پیش)
+1 0
نظری ندارم ! ، نمایش یک دیالوگ ، به یک Activity در حال اجرا نیاز داره ، چون کلاسی از جنس object نزدیک به اون اکتیویتی نیست ، نمیتونید مستقیم بگید activtyA.this پس نیاز دارید از روش لینک استفاده کنید (11 سال پیش)
+1 0
روشی که در لینک گفتید چیه؟؟؟من متوجه نشدم (11 سال پیش)
+1 0
روشی که در لینک گفتید رو میشه توضیح بدید؟ (11 سال پیش)

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