بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
استفاده از Thread برای بازکردن با تأخیر یک Activity
سلام استاد من میخوام با استفاده از therad یک اکتیویتی دیگرو صدا بزنم اینم سورس اما برنامه کرش میکنه ممنون میشم راهنمایی کنید.
Thread splashTread = new Thread() {
@Override
public void run() {
try {
int waited = 0;
while (_active && (waited < _splashTime)) {
sleep(100);
if (_active) {
waited += 100;
}
}
}
catch (InterruptedException e) {
// do nothing
} finally {
finish();
Intent intent = new Intent(ActivityMain.this, ActivitySecond.class);
ActivityMain.this.startActivity(intent);
}
}
};
splashTread.start();
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
uncocoder
12 سال پیش
+1
0
بلاک درون finally هم در thread اجرا میشه. برای باز کردن Activity جدید نیاز هست که در UI Thread کد اجرا بشه. پس بلاک درون finally ( که برای بازکردن Activity هست ) را درون متد post نمونه Handler اجرا کن. آموزش دقیق در همزمانی ارائه شده.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .