آموزش برنامه نویسی اندروید (Android)
۴۱۹ آموزش
نمایش دسته بندی ها (۴۱۹ آموزش)

اجرای کدهایی که نیاز به بروزرسانی (User Interface) UI دارند، هنگامی که در حال اجرای یک سری کد در Thread ای غیر از Thread اصلی برنامه هستیم، با استفاده از روش runOnUiThread در یک Activity ، در برنامه نویسی اندروید

قبلا مفهوم thread را شرح دادیم ( کلید شماره 2718 ) و همچنین تذکر دادیم که یک thread جداگانه (به غیر از thread اصلی برنامه اندروید) که در حال اجرا است، تحت هیچ شرایطی نباید بخش تعامل با کاربر (user interface) برنامه اندروید را به روزرسانی (update - تغییر دادن) کند. هر تغییری (بروزرسانی) در بخش تعامل با کاربر (user interface) باید توسط thread اصلی (main thread) انجام شود (در غیر این صورت، مشکلاتی به وجود می آید). به thread اصلی، main UI thread نیز گفته می شود، زیرا تنها این thread است که با UI سر و کار دارد.

چنانچه بخواهیم در یک thread (که thread ای غیر از thread اصلی برنامه است)، کدهایی را اجرا کنیم که UI را تغییر بدهد، باید آن کدها را با روش runOnUiThread اجرا نماییم. یعنی مثلا فرض کنید که ما کدهایی را داشته ایم که به صورت معمولی، در میان کدهای Activity می نوشته ایم (که UI را تغییر می داده اند) :


// your codes

حال یک thread جدید ساخته ایم ( کلید شماره 2854 ) و قصد داریم که همان کدها را در thread جدید اجرا کنیم. این بار باید آن کدها را در thread جدید (که thread ای غیر از thread اصلی برنامه است) ، به صورت زیر اجرا نماییم :


runOnUiThread(new Runnable() {

    @Override
    public void run() {

        // your codes

    }
});

از خود اسم runOnUiThread نیز می توان به عملکرد آن پی برد، در واقع اسم آن شرح می دهد که این روش برای اجرای یک سری کد در thread اصلی برنامه (که آن را main UI thread نیز می نامیم)، به کار می رود.

نویسنده علیرضا گلمکانی
شماره کلید 2858
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 0 0 0

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)