آموزش اندروید فصل دوم قسمت چهارم – Progress Dialog ها

android-part-2

در قسمت دوازدهم آموزش اندروید در ارتباط با Progress Dialog ها که کاربرد فراوانی در برنامه های اندروید دارد و اساسا زمانی استفاده میشوند که کاربر باید منتظر بماند و دسترسی محدودی داشته باشد تا زمانی که پروسه مورد نظر به پایان برسد صحبت کرده ایم و دو مثال کاربردی را نیز آموزش داده ایم.

آموزش اندروید فصل دوم قسمت چهارم – دیالوگ پیشرفت  

توجه : برای مشاهده تصاویر در سایز اصلی بر روی آنها کلیک کنید.

نمایش Progress Dialog

یکی از دیالوگ های پر مصرف اندروید دیالوگ Please Wait است که معمولا زمانی که یک پروسه در حال انجام است نمایش داده میشود. برای مثال برنامه ای که قبل از استفاده کاربر باید به سرور وصل شده Login شود خب مسلما پروسه عظیمی را باید طی کند پس از دیالوگ Progress Dialog استفاده میکندتا کاربر را منتظر نگه دارد.

برای درک بیشتر پروژه جدیدی تحت عنوان ProgressDialogPrj ایجاد کرده و دستورات زیر را درون بخش activity_main.xml بدین صورت کدنویسی میکنیم

کدهای فوق یک Button را ایجاد میکنند که میتوان به صورت گرافیکی نیز (در آموزش های قبل آموزش داده شده) ایجاد کرد. حال در بخش MainActivity.java که در مسیر ProgressDialogPrj /src /com.example.progressdialogprj  قرار دارد بدین صورت کدنویسی میکنیم

روش کار

اصولا برای ایجاد یک ProgressDialog پس از import کردن این کلاس باید یک شی از این کلاس ایجاد کرده و متد show() مربوط به آن که مشخص است برای نمایش دادن تنظیم ویژگی های آن است را فراخوانی کنیم که در دستوارت نیز با کامنت //show the Dialog مشخص شده. این کار تنها برای نمایش دیالوگ است و گر ادامه کدهارا ننویسیم و پس از پایان ایجاد شی و متد show() برنامه را اجرا کنیم خواهیم دید که برنامه به درستی اجرا میشود اما پنجره ProgressDialog ایجاد شده مدام در حال اجرا میباشد و نقطه پایان ندارد چون تعیین نشده پس برای جلوگیری از این رویداد از یک Thread به وسیله رویداد Runnable ایجاد میکنیم(در ادامه مفصل تر راجع به Thread ها صحبت خواهیم کرد) و توسط متد Run که در Thread دیگری اجرا میشود با استفاده از متد sleep مشخص میکنیم که پس از ۵ ثانیه پنجره ProgressDialog بسته شود(با استفاده از متد dimiss()) پس از اجرا نتیجه مشابه زیر را خواهید داشت

آموزش کاربردی اندروید-قسمت دوازدهم

نمایش یک ProgressDialog پیچیده تر

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

در همان پروژه ProgressDialogPrj که برای مثال قل ایجاد کردید در قسمت activity_main.xml یک Button دیگر به صورت زیر ایجاد میکنیم

توجه داشته باشید که بخش “android:onClick=“onClick2 باید مقدار متفاوت با Button قبل داشته باشد چون در اکتیویتی صدا زده میشوند که هنگام کلیک کردن اقدامی انجام دهد.

حال در قسمت MainActivity.java کدهای زیر را اضافه میکنیم

پس از اجرا نتیجه را بدین صورت خواهیم دید

آموزش کاربردی اندروید-قسمت دوازدهم

روش کار

برای ایجاد یک دیالوگ Progress برای نمایش یک عملیات ابتدا باید یک شی از کلاس ProgressDialog ایجاد کرد و خصوصیاتی چون آیکون و استایل آن را تنظیم کرد

سپس دو دکمه که برروی دیالوگ نمایش داده شود که با ویژگی های BUTTON_POSETIVE و BUTTON_NEGATIVE مشخص میشوند را تعیین میکنیم سپس باید برای تعیین مقدار پیشرفت از شی Thread  برای ایجاد یک بلاک Runnable استففاده میکنیم

در تکه کد زیر نیز هدف شمارش ۱ تا ۱۵ با تاخیر ۱ثانیه در شمارش هر عدد میباشد.  

متد ()incrementProgressBy شمارنده را افزایش میدهد و هرگاه مقدار ۱۰۰% شد پنجره بسته میشود.

مدرس : خانم مهندس داودی نژاد

رآموزش اندروید فصل دوم قسمت سوم

آموزش اندروید فصل دوم قسمت پنجم

درباره نویسنده

مطالب مرتبط

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *