gpt4 book ai didi

java - OverridePendingTransition 工作异常

转载 作者:行者123 更新时间:2023-11-30 01:07:15 26 4
gpt4 key购买 nike

我是 Xamarin Android 编程以及一般 Android 编程的初学者。我成功运行了以下代码并达到了预期效果:

//in the context of the main Activity
StartActivity(someIntent);
OverridePendingTransition(Android.Resource.Animation.SlideInLeft,
Android.Resource.Animation.SlideOutRight);

现在我想创建自己的动画,使用 XML 声明从左侧滑出和从右侧滑出。我将我的 XML 文件放在 anim 文件夹下,分别命名为 slideInLeft.xmlslideOutRight.xml。以下是文件内容:

slideInLeft.xml:

<?xml version="1.0" encoding="utf-8" ?>
<translate xmlns:android="http://schemes.android.com/apk/res/android"
android:duration="300"
android:fromXDelta="-100%"
android:toXDelta="0%">
</translate>

slideOutRight.xml:

<?xml version="1.0" encoding="utf-8" ?>
<translate xmlns:android="http://schemes.android.com/apk/res/android"
android:duration="350"
android:fromXDelta="0%"
android:toXDelta="100%">
</translate>

现在代码只是简单地更改为:

//in the context of the main Activity
StartActivity(someIntent);
OverridePendingTransition(Resource.Animation.SlideInLeft,
Resource.Animation.SlideOutRight);

但是动画不工作,新的 Activity 只是在短暂的延迟后显示(看起来等于滑动的持续时间,其中 300ms)。

这让我很困惑。我不知道为什么以及如何进行这项工作。

最佳答案

尝试将您的 xml 文件更改为:

向左滑动

<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%p" android:toXDelta="0"
android:duration="350"/>
</set>

向右滑动

<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p"
android:duration="350"/>
</set>

这应该有效。

关于java - OverridePendingTransition 工作异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38766380/

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