0

スラッシュスクリーンにトランジションがありますが、アニメーションが開始される場合と開始されない場合があります。これを解決する方法がわかりません。ここでは、テキストビューのアニメーションを使用したスプラッシュ アクティビティです。奇妙なことに、特にエミュレータでは、デバイスよりも多くの場合、正しく動作することがあります。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.splash_screen);

    title1 = (TextView)findViewById(R.id.textView1);        
    animation1 = AnimationUtils.loadAnimation(this,R.anim.long_slide_left);

    title1.startAnimation(animation1);

    new Handler().postDelayed(new Runnable() {
        public void run() {

            Intent intent = new Intent();
            intent.setClass(SplashScreenActivity.this, mainActivity.class);

            SplashScreenActivity.this.startActivity(intent);               

            SplashScreenActivity.this.finish();

            // transition from splash to main menu
            overridePendingTransition(R.anim.activityfadein,
                    R.anim.activityfadeout);

        }
    }, 1000);
}
4

1 に答える 1

0

Handler の代わりに、この単純な Thread を試してください。

Thread splash=new Thread(){
            @Override
            public void run() {

                try {


                        sleep(3000);



                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }finally{
                    finish();
                    Intent i=new Intent(getBaseContext(), MainActivity.class);
                    startActivity(i);
                }
            }
        };
        splash.start();
于 2013-08-10T16:19:40.733 に答える