بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

عدم اجرای انیمیشن در thread

مدیریت گفتگو
مجتبی 11 سال پیش
آخرین تغییر: 11 سال پیش

با سلام

من یه Splash Screen  ساختم و داخل اون از کدهای زیر برای ایجاد یه تاخیر و رفتن به Activity  بعدی استفاده کردم و مشکل اینجاست که برنامه اجرا میشه اما انیمیشن دلخواه نمایش داده نمی شه از handler  هم نمی خوام استفاده کنم ممنون از راهنمایی تون

  @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);

Thread thread = new Thread() {

@Override
public void run() {

try {
Thread.sleep(delayMillis);
}
catch (InterruptedException e) {
e.printStackTrace();
}
Intent intent = new Intent(G.currentActivity, ActivityMain.class);
startActivity(intent);
G.currentActivity.overridePendingTransition(android.R.anim.slide_out_right, android.R.anim.slide_in_left);
finish();
}
};

thread.start();

نظرات

Ghost 11 سال پیش
دوست عزیز با سرچ کردن به جواب می رسیدید ! من قبلا جواب سوالتون رو دادم : لینک ! پست دوم رو بخون !
مجتبی 11 سال پیش
ممنون دوست عزیز از جوابت سرچ کردم جوابمو پیدا نکردم جوابی هم که شما دادی پاسخ من نیست . کدی که من نوشتم همون کار کد شما رو میکنه مشکل اینجاست کد مربوط به انیمیشن ورودی و خروجی اجرا نمی شه G.currentActivity.overridePendingTransition(android.R.anim.slide_out_right, android.R.anim.slide_in_left);
Ghost 11 سال پیش
آهان ! از اون لحاظ میگی ! خب دیگه شرمنده من که بلد نیستم :) استادان کمک کنند !

پاسخ‌ها 2

مجتبی یگانه 11 سال پیش

من متوجه منظورتون نمیشم که از Handler نمی خوام استفاده کنم ! ، توضیحات بسیار خوبی در مورد هندلر ها در انجمن هست ، ساده ترین توضیح اش که تکرار مکررات هست رو دوباره میگم

"یک کودک درخواست خرید بستنی را به مادرش ارائه می کند تا او برای خرید برود ، چرا که خیابان برای کودک خطرناک است"

کودک پردازش داخل یک ترد هست ، مادر ترد اصلی برنامه هست ، خیابان هم سیستم عامل !

پس شما هم باید از Handler ها استفاده کنید نمیخوام ام نداره ! ، اما جالب بدونید برعکس ، شما اینجا نیازی نیست از Thread ها  استفاده کنید ! ، خود Handler ها قابلیت اجرای با Delay رو دارند ، مثل بعد از N میلی ثانیه این کار رو انجام بده

نظرات

مجتبی 11 سال پیش

ممنون دوست عزیز . از Thread استفاده میکنم چون میخوام با متد Ontouch  که تعریف میکنم اگه کاربر قبل از اتمام مدت نمایش SplashScreen روی اون تاچ کرد Activity  بعدی اجرا بشه اما با هندلر هر کار کردم نشد یه بار با تاچ اکتیویتی بعدی باز میشد دوباره هم بعد از اتمام تاخیر نمایش SplashScreen  یعنی دوبار باز میشد .یه سورس دیده بودم این کارو با Thread انجام داده بود اما انیمیشن نداشت

علت اینکه انیمیشن در Thread اجرا نمیشه چیه ؟

نظرات


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