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

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

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

با سلام

من یه 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();
0 0
دوست عزیز با سرچ کردن به جواب می رسیدید ! من قبلا جواب سوالتون رو دادم : لینک ! پست دوم رو بخون ! (11 سال پیش)
+1 0
ممنون دوست عزیز از جوابت سرچ کردم جوابمو پیدا نکردم جوابی هم که شما دادی پاسخ من نیست . کدی که من نوشتم همون کار کد شما رو میکنه مشکل اینجاست کد مربوط به انیمیشن ورودی و خروجی اجرا نمی شه G.currentActivity.overridePendingTransition(android.R.anim.slide_out_right, android.R.anim.slide_in_left); (11 سال پیش)
0 0
آهان ! از اون لحاظ میگی ! خب دیگه شرمنده من که بلد نیستم :) استادان کمک کنند ! (11 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
مجتبی یگانه  11 سال پیش
+4 0

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

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

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

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

پاسخ به سوال 
مجتبی  11 سال پیش
0 0

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

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


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