2011-01-14 51 views
2

這是我用來爲視圖設置動畫的代碼,以便舊圖像消失(黑色背景),並且新外觀從外部(從左至右)滑入。在切換imageview資源時使用Android動畫

this.imgView.setAnimation(AnimationUtils.loadAnimation(this, R.anim.slide_right)); 

this.imgView.setImageResource(imageArray[next]); 

如何讓舊圖像在新圖像出現之前滑出屏幕?如果兩者都可見,會很好,但我想這需要2個視圖才能切換,所以現在我可以一次在屏幕上粘貼一個。

回答

1

使用ViewFlipper在同一個活動中的兩個ImageView之間切換,併爲ViewFlipper設置滑動動畫。

在調用showNext()和showPrevious()之前,在下一個和上一個圖像視圖中設置正確的圖像資源。

+0

這將有助於僅在動畫用戶動作之後,對不對?這是一個雙向滾動。我不知道用戶是否想向前或向後滾動,直到他實際上在屏幕上拖動手指。因此,用戶完成「扔」>應用程序加載其他視圖與圖片和動畫取決於一擲/滑動/拖動方向? – yosh 2011-01-14 11:19:54

1

你可以通過使用TranslateAnimation來做到這一點。 應用下面的代碼,看看發生了什麼

TranslateAnimation left = new TranslateAnimation(-480, 10, 0, 10); 
    left.setDuration(2000); 

    left.setRepeatCount(1); 
    view=(ImageView)findViewById(R.id.iv); 
    view.startAnimation(left); 

創建自己的TranslateAnimation並據此適用