Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 淡出背景,然后转到下一个活动_Android_Transitions - Fatal编程技术网

Android 淡出背景,然后转到下一个活动

Android 淡出背景,然后转到下一个活动,android,transitions,Android,Transitions,我只是想模仿一些著名的游戏,比如《愤怒的小鸟》,当你开始游戏时,有几个屏幕,闪烁然后消失,然后转到另一个屏幕,消失然后主菜单出现。我该怎么做?目前我的代码是淡入淡出。在实现了下面的代码之后,令人惊讶的是,它没有动画。有什么想法吗,伙计们 package com.kfc; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler;

我只是想模仿一些著名的游戏,比如《愤怒的小鸟》,当你开始游戏时,有几个屏幕,闪烁然后消失,然后转到另一个屏幕,消失然后主菜单出现。我该怎么做?目前我的代码是淡入淡出。在实现了下面的代码之后,令人惊讶的是,它没有动画。有什么想法吗,伙计们

package com.kfc;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.view.*;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationUtils;
import android.widget.LinearLayout;
import android.widget.TextView;

public class Intro extends Activity {
    LinearLayout screen;
    Handler handler = new Handler();
    int i;
    Intent intent;
    TextView tv;
    Animation mAnim;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.introxml);

        screen = (LinearLayout) findViewById(R.id.myintro);


        Animation fade = AnimationUtils.loadAnimation(this, android.R.anim.fade_in);
        fade.setAnimationListener(new AnimationListener() {
            @Override
             public void onAnimationRepeat(Animation animation) {
              // TODO Auto-generated method stub

             }
            @Override
             public void onAnimationStart(Animation animation) {
              // TODO Auto-generated method stub

             }
            @Override
             public void onAnimationEnd(Animation animation) {
                startActivity(new Intent(Intro.this, NewKFCActivity.class));
                Intro.this.finish();
                overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
             }

        });
        screen.startAnimation(fade);

    }
}

这可以通过活动动画来完成

在调用
startActivity
之后,调用

overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);

第一个参数表示您将要开始的活动将淡入,第二个参数指定当前在前台的活动的淡出动画。

这是过度工作的原因-请尝试“活动”#替代“淡出过渡”。在调用startActivity之前提供一个或两个XML alpha动画,您就可以设置:@Jens我编辑了上面的代码。。我想我做了一个错误的实现。。程序在后台停止,并且没有任何淡入淡出。当然跳过线程。2.您有一个可用的
视图
,也有一个
屏幕#postDelayed(new Runnable(){..},5000)
,在那里您可以执行
#overridePendingTransition(..)
,然后是
#run()
Runnable方法中的
#startActivity
(无需调用
线程#sleep(long)
)@Jens我已经编辑了上面的代码。。但是仍然失败:(嗯,你在运行什么?我尝试了相同的代码,它在两个活动之间消失了,没有问题。你是否在两个活动
Activity#onCreate(Bundle)中都添加了日志输出
methods?我编辑了上面的代码..我认为我做了一个错误的实现..程序在后台停止,没有淡入。这并不奇怪-您正在另一个活动的
onCreate
方法中启动一个新活动-调用
onCreate
时,后一个活动甚至还没有显示。也许您想通过计时器完成吗?我现在很困惑。对不起,我是android的新手。我现在应该把overridePendingTransition放在哪里?这将适用于2.1及以上版本。overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);startActivity(新意图(Intro.this,newkfcativity.class))太奇怪了。你现在在观察什么?