【发布时间】:2019-10-06 10:02:04
【问题描述】:
我正在一个 android 应用程序上创建一个 UI。当我调用 view.startAnimation(anim) 时。它会根据需要淡化按钮,但一旦动画结束从 1 -> 0 插入 alpha,它就会重新出现。我假设 alpha 重置为其原始值。我不确定我错过了什么。
我正在使用最新的 android api,并在 Galaxy s9 物理设备上进行测试。
我已经调查了以下页面以尝试解决我的问题,一个是 youtube 教程,另一个是堆栈溢出回答的问题。 https://www.youtube.com/watch?v=x6QS6m1pYMs Fade In Fade Out Android Animation in Java
我已将所有内容设置如下, xmls:
<ToggleButton
android:id="@+id/my_button_toggle"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_gravity="bottom|right"
android:gravity="center" />
<Button
android:id="@+id/my_button"
android:textSize="12dp"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_gravity="bottom|center"/>
上面是在 FrameLayout 内部定义的,在它之前定义了一个片段。
set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:id="@+id/fade_out"
android:duration="500"
android:fromAlpha="1.0" android:toAlpha="0.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:fillAfter="true" />
</set>
与调用 Java 像这样放在一起..
//global
ToggleButton togglebutton;
Button button;
void hideUI(){
fade(togglebutton);
fade(button);
}
void fade(View view){
Button fadingButton = (Button) view;
Animation fadeOutAnimation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.fade_out);
fadingButton.startAnimation(fadeOutAnimation);
}
【问题讨论】:
标签: java android user-interface alpha