在basic4android中,当一个Activity开始时,它会从我手机屏幕的一角弹出。
我尝试在活动之间为动画创建XML文件,但仍然活动以我的动画开始沿着恼人的弹出动画。
我想摆脱它并使用我的自定义动画。
我正在使用此函数和两个XML文件来创建动画:
Sub ListView1_ItemClick (Position As Int, Value As Object)
StartActivity(Value)
SetAnimation("file1", "file2")
End Sub
Sub SetAnimation(InAnimation As String, OutAnimation As String)
Dim r As Reflector
Dim package As String
Dim In, out As Int
package = r.GetStaticField("anywheresoftware.b4a.BA", "packageName")
In = r.GetStaticField(package & ".R$anim", InAnimation)
out = r.GetStaticField(package & ".R$anim", OutAnimation)
r.Target = r.GetActivity
r.RunMethod4("overridePendingTransition", Array As Object(In, out), Array As String("java.lang.int", "java.lang.int"))
End Sub
和XML文件
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="400"
android:fromAlpha="0.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="1.0" />
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="400"
android:fromAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="0.0" />
我正在使用b4a的5.0.2版本 情况会是这样吗?
答案 0 :(得分:0)
This post表示您必须在致电startActivity()
或finish()
后立即致电SetAnimation。
由于您的动画似乎有效,我猜您在调用其中一种方法后不会立即调用它,因此仍会应用默认动画。