gpt4 book ai didi

android - Activity 转换不起作用

转载 作者:IT老高 更新时间:2023-10-28 23:38:35 25 4
gpt4 key购买 nike

我正在尝试实现 Activity 转换,但我看不到效果。这是我的第一个 Activity 的代码:

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

private void setUpWindowAnimations() {
if (android.os.Build.VERSION.SDK_INT >= 21) {
Log.i("ANIM", "Fade called");
Fade fade = new Fade(2);
fade.setDuration(3000);
getWindow().setExitTransition(fade);
}
}

这是第二个 Activity 的代码:

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

private void setUpWindowAnimations() {
if (android.os.Build.VERSION.SDK_INT >= 21) {
Log.i("ANIM", "slide called");
Slide slide = new Slide(Gravity.LEFT);
slide.setDuration(3000);
getWindow().setEnterTransition(slide);
}
}

即使我设置了淡出动画,也没有淡出,而且幻灯片以默认方式工作,即方向是 BOTTOM 而不是 LEFT。

Here是我的 values/style.xmlhere是我的 v21/styles.xml

这是我的 AndroidManifest.xml:

<application
android:name=".MyApplication"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:theme="@style/AppTheme">

为什么这些转换不起作用以及如何使它们起作用。我用了paste.ubuntu.com因为 SO 编辑器没有正确显示 xml。

最佳答案

Bundle bundle = ActivityOptions.makeSceneTransitionAnimation(this).toBundle();
this.startActivity(intent,bundle);

在两个 Activity 之间设置好 Intent 后添加这两行,这会起作用。

你不能仅仅通过 startActivity(intent) 方法开始一个 Activity ,您需要使用 bundle 指定跨 Activity 的转换。

关于android - Activity 转换不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35064342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com