[英]How to hide Images after animation end in android
在我的 android 應用程序中,當我單擊所有圖像動畫中的任何一個時,我有五個圖像視圖。 我為所有圖像設置了縮小和放大動畫。 動畫完成后,選定的圖像視圖將不可見。 圖像不可見后,當我單擊該圖像視圖位置時,它再次啟動動畫並且圖像不可見。
放大動畫:<\/strong>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1"
android:toXScale="5"
android:fromYScale="1"
android:toYScale="5"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000"
android:fillAfter="true">
</scale>
將此代碼添加到動畫對象中:
animation.setAnimationListener(new AnimationListener()
{
@Override
public void onAnimationStart(Animation animation) { }
@Override
public void onAnimationRepeat(Animation animation) { }
@Override
public void onAnimationEnd(Animation animation)
{
v2.setImageResource(R.drawable.some_transparent_image);
}
});
發生此問題是因為您在兩個Animation XML文件中都添加了android:fillAfter =“ true”。
從兩個XML中刪除“ android:fillAfter =“ true”,或在兩個文件中都保留“ android:fillAfter =” false“。
您必須處理該動畫的動畫偵聽器。
zoomin.setAnimationListener(new AnimationListener()
{
@Override
public void onAnimationStart(Animation animation) { }
@Override
public void onAnimationRepeat(Animation animation) { }
@Override
public void onAnimationEnd(Animation animation)
{
v2.setVisibility(View.GONE);
}
});
您需要使用透明圖像 。您需要做的就是在動畫結束時,需要將透明圖像設置為該圖像的背景/ scr,從而替換上一個圖像。
更改視圖的可見性 無法解決您的問題
v2.setVisibility(View.GONE);
v2.setVisibility(View.INVISIBLE);
由於上述兩種情況都會導致您的視圖不可單擊,因此您將無法再次單擊。
您可以簡單地更改圖層的透明度。
v2.setAlpha(0f);
你必須首先使用 image.clearAnimation() 然后隱藏它 image.visibility = View.GONE
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.