Android activity 转场没有出现

Android activity transition does not appear

几个月来我一直在努力让 activity 过渡到工作中。我尝试了多种方法,使用 XML 和样式以及代码,但无济于事。下面是我最近的尝试。有谁知道为什么我无法让任何过渡出现?

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    addSlideTransitions();
    setContentView(R.layout.my_activity_layout);
    ....
}

protected void addSlideTransitions()
{
    getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
    Slide slide = new Slide();
    slide.setDuration(1000);
    getWindow().setEnterTransition(slide);
    getWindow().setExitTransition(slide);
}

尝试这样做,我相信这对你有用。

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addSlideTransitions();

        setContentView(R.layout.activity_main);

    }



    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    protected void addSlideTransitions()
    {
        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
        Slide slide = new Slide();
        slide.setDuration(1000);
        getWindow().setEnterTransition(slide);
        getWindow().setExitTransition(slide);
    }
}

尝试在 super.onCreate 之前添加对 addSlideTransitions 的调用。

@Override
protected void onCreate(Bundle savedInstanceState)
{
    addSlideTransitions();
    super.onCreate(savedInstanceState);
    setContentView(R.layout.my_activity_layout);
    ....
}

您必须使用通过 makeSceneTransitionAnimation 创建的 ActivityOptions 包启动 activity。

这种类型的转换也仅在同一任务中有效(从 N 开始)。