Я использовал scalX
и scalY
свойства objectAnimator
. Когда начинается анимация, я уменьшаю окно с 0,9 до 0,5 на половину времени анимации. И снова масштабируйте окно от 0,5 до 0,9 для оставшегося времени анимации. Поскольку размер окна уменьшается, границы окон прекрасно вписываются в область отсечения во время анимации. Это решило мою проблему. Ниже приводится дополнительный код в card_flip_right_out.xml
от this example
<objectAnimator
android:duration="200"
android:propertyName="scaleY"
android:valueFrom="0.9"
android:valueTo="0.5" >
</objectAnimator>
<objectAnimator
android:duration="200"
android:propertyName="scaleX"
android:valueFrom="0.9"
android:valueTo="0.5" >
</objectAnimator>
Ниже код, добавленный в card_flip_right_in.xml
<objectAnimator
android:duration="199"
android:propertyName="scaleY"
android:valueFrom="0.5"
android:valueTo="0.9" >
</objectAnimator>
<objectAnimator
android:duration="199"
android:propertyName="scaleX"
android:valueFrom="0.5"
android:valueTo="0.9" >
</objectAnimator>
<objectAnimator
android:duration="1"
android:propertyName="scaleY"
android:startOffset="199"
android:valueTo="1" >
</objectAnimator>
<objectAnimator
android:duration="1"
android:propertyName="scaleX"
android:startOffset="199"
android:valueTo="1" >