2012-12-12 34 views
5

Tôi đang cố gắng tạo hoạt ảnh sẽ trượt từ vị trí hiện tại của nó đến giữa màn hình và sau đó lật. Tôi có từng thành phần chuyển động hoạt động đúng cách nhưng một khi tôi đặt tất cả chúng vào một bộ với startoffset, hoạt ảnh không bắt đầu cho đến khi bù đắp kết thúc và nó thực hiện tất cả các hình ảnh động cùng một lúc. Bất kỳ trợ giúp về điều này được nhiều đánh giá cao.Android - Tính năng bắt đầu hoạt ảnh không hoạt động đúng cách

slide_down.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <!-- Slide down --> 
    <translate 
     android:fromYDelta="0%" 
     android:toYDelta="100%" 
     android:duration="1000"/> 

    <!-- Set alpha to fully opaque --> 
    <alpha 
     android:fromAlpha="0.8" 
     android:toAlpha="1.0" 
     android:duration="1000" /> 

    <!-- Flip image once it's in the center --> 
    <!-- ***** HERE IS THE only offset I set ****** --> 
    <scale 
     android:fromXScale="0.0" 
     android:toXScale="1.0" 
     android:pivotX="50%" 
     android:fromYScale="1.0" 
     android:toYScale="1.0" 
     android:startOffset="1000" 
     android:duration="200" /> 
</set> 

gọi mã

Animation anim = AnimationUtils.loadAnimation(getActivity(), slideDirection); 
     anim.setAnimationListener(new AnimationListener() { 
      public void onAnimationStart(Animation animation) {    
      } 

      public void onAnimationRepeat(Animation animation) {     
      } 

      public void onAnimationEnd(Animation animation) { 
       mCallBack.categorySelected(view.getId()); 
      } 
     }); 

     view.clearAnimation(); 
     view.startAnimation(anim); 

Cảm ơn, Dman

Trả lời

2

offsets Animation luôn tính từ khi bắt đầu hoạt hình. Nếu bạn muốn các hình động của bạn chơi từng cái một, thì bạn phải tự tính toán các phần bù.

Sau đây sẽ đóng dịch trong 1 giây, sau đó alpha cho một thứ hai tiếp theo quy mô cho 200ms -

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <!-- Slide down --> 
    <translate 
     android:fromYDelta="0%" 
     android:toYDelta="100%" 
     android:duration="1000"/> 

    <!-- Set alpha to fully opaque --> 
    <alpha 
     android:fromAlpha="0.8" 
     android:toAlpha="1.0" 
     android:startOffset="1000" 
     android:duration="1000" /> 

    <!-- Flip image once it's in the center --> 
    <!-- ***** HERE IS THE only offset I set ****** --> 
    <scale 
     android:fromXScale="0.0" 
     android:toXScale="1.0" 
     android:pivotX="50%" 
     android:fromYScale="1.0" 
     android:toYScale="1.0" 
     android:startOffset="2000" 
     android:duration="200" /> 
</set> 
+0

cảm ơn cho câu trả lời. Không có gì tôi đang tìm kiếm là có bản dịch và alpha được thực hiện cùng một lúc, với hoạt ảnh lật bắt đầu khi hình ảnh đã di chuyển đến trung tâm và hoàn toàn mờ đục – DMCApps

Các vấn đề liên quan