11

tôi có 2 hoạt động và tôi muốn tạo một chuyển đổi hoạt ảnh giữa hai hoạt động sao cho cả hai hoạt động của chế độ xem như thể hoạt động thứ hai đang đẩy hoạt động đầu tiên lên trên. trong hoạt động đầu tiên của tôi tôi sử dụng:overridePendingTransition hiển thị hoạt động thứ hai quá nhanh

Intent iSecondActivity = new Intent(FirstActivity.this,SecondActivity.class); 
FirstActivity.this.startActivity(iSecondActivity); 
FirstActivity.this.overridePendingTransition(R.anim.slide, R.anim.slide2); 

và slide.xml của tôi trông giống như:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator"> 
    <translate 
     android:interpolator="@android:anim/decelerate_interpolator" 
     android:fromYDelta="0" 
     android:toYDelta="-100%p" 
     android:duration="2000" 
    /> 
</set> 

và slide2.xml của tôi trông giống như:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator"> 
    <translate 
     android:interpolator="@android:anim/decelerate_interpolator" 
     android:fromYDelta="100%p" 
     android:toYDelta="0" 
     android:duration="2000" 
    /> 
</set> 

TUY NHIÊN, vấn đề là khi "startActivity" được gọi, chế độ xem của hoạt động thứ hai đã được hiển thị trong khi quá trình chuyển đổi chỉ bắt đầu trượt. Tôi muốn xem các hoạt động đầu tiên của xem trượt lên ... nhưng thay vào đó tôi nhìn thấy quan điểm của hoạt động thứ hai (kết xuất trên xem hoạt động đầu tiên) trượt lên.

vấn đề thứ hai là tôi thấy chế độ xem thay thế là chế độ xem hoạt động đầu tiên. tôi muốn chế độ xem thay thế là chế độ xem của hoạt động thứ hai đang đẩy lên trên.

Thật khó giải thích, vì vậy, vui lòng cho tôi biết nếu tôi có thể giải thích chi tiết hơn. xin lỗi vì bất kỳ sự nhầm lẫn nào và cảm ơn vì đã đọc điều này.

P.S. Tôi đang sử dụng textviews ... tôi đoán rằng render quá nhanh? Tôi cũng đang sử dụng Motorola Razr, không phải là vấn đề.

Trả lời

9

Nevermind, đó là lỗi nghiêm trọng - tôi không hiểu tài liệu có nghĩa là gì khi "nhập hoạt ảnh" và "hoạt ảnh thoát". tôi cần phải trao đổi các XMLs bằng cách thay đổi:

FirstActivity.this.overridePendingTransition(R.anim.slide, R.anim.slide2); 

vào

FirstActivity.this.overridePendingTransition(R.anim.slide2, R.anim.slide); 
+0

có cách nào để sử dụng Animator thay thế không? –

+0

tôi cũng phải đối mặt với cùng một vấn đề, nhưng được giải quyết bằng câu trả lời của bạn, Nhưng nó rất lạ. Dù sao, cảm ơn –

6

chỉ cần thêm những để slide2.xml của bạn:

android:startOffset="2000" 

cách này, hình ảnh động cho hoạt động thứ 2 sẽ chỉ bắt đầu ngay sau khi hoạt động 1 của bạn là hoàn tất.

+0

Xin lỗi, tôi đã không rõ ràng về câu hỏi của tôi. Tôi đã nghĩ rằng vấn đề đã được hiển thị quá nhanh. nhưng hóa ra tôi không hiểu ý nghĩa của các tham số "nhập hoạt hình" trong cuộc gọi cho "overridePendingTransition". –

+0

tuy nhiên, tôi không biết bạn có thể trì hoãn hoạt ảnh. đó là khá hữu ích. +1 –

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