بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
تنظیم زمان اجرای splash و انیمیشن
سلام دوستان یه مشکل اساسی دارم دیروز هم مطرح کردم اما نتیجه ای نگرفتم.صفحه splash دارم که سه تا imageview دارم.حالا میخوام با اجرای splash این باتن ها با حرکت انیمیشن ظاهر بشن.هنگام طراحی هم imageview هارو invisible کردم.کد هم در زیر گذاشتم.حالا نمیدونم چرا هر طور که تغییر هم میدم نتیجه نداره و هنگام اجرای splash این imageها همچنان مشخص اند بعد انیمیشن اجرا میشه روشون و یه حالت غیر همرمان و نامرتب
public class SplashActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.splash);
Handler handler = new Handler();
final Handler threadHandler = new Handler();
this.buttonAnim(R.id.imageView2, 2000);
this.buttonAnim(R.id.imageView3, 3000);
this.buttonAnim(R.id.imageView4, 4000);
new Thread() {
@Override
public void run() {
threadHandler.postDelayed(new Runnable() {
ImageView imageView2 = (ImageView) findViewById(R.id.imageView2);
ImageView imageView3 = (ImageView) findViewById(R.id.imageView3);
ImageView imageView4 = (ImageView) findViewById(R.id.imageView4);
@Override
public void run() {
imageView2.setVisibility(View.VISIBLE);
imageView3.setVisibility(View.VISIBLE);
imageView4.setVisibility(View.VISIBLE);
}
}, 2000);
}
}.start();
handler.postDelayed(new Runnable() {
@Override
public void run() {
finish();
// start the home screen
Intent intent = new Intent(SplashActivity.this,
HomeActivity.class);
startActivity(intent);
Intent lotionIntent = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(lotionIntent);
}
}, 8000);
}
public void buttonAnim(int img, long duration) {
ImageView b = (ImageView) findViewById(img);
Animation anim = AnimationUtils.loadAnimation(this, R.anim.anim_translate);
anim.setDuration(duration);
b.startAnimation(anim);
}
}
0
0
خوب 3 تا thread رو باهم استارت کردی، در این حالت باعث میشه سیستم بنابر محاسبات زمانی خودش thread ها رو بطور انتخابی اجرا کنه، این قسمت رو تو بحث همزمانی استاد کاملاً با مثال توضیح دادن. الگوریتمی هم که برای این منظور انتخاب کردید مناسب نیست، یک thread برای این کار کافیه . (11 سال پیش)
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .