思路:两张一样的图片从不同的点同时向一个方向移动
效果图如下:
public class CallActivity extends BaseActivity implements Animation.AnimationListener{
private static final String TAG = "CallActivity";
@BindView(R.id.iv_one)
ImageView iv_one;
@BindView(R.id.iv_two)
ImageView iv_two;
private TranslateAnimation animationFirst;
private TranslateAnimation animationSecond;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_call);
ButterKnife.bind(this);
initData();
startAnimation();
}
private void initData() {
animationFirst = new TranslateAnimation(Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,1f,
Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0f);
animationFirst.setDuration(5000);
animationFirst.setInterpolator(new LinearInterpolator());
animationFirst.setAnimationListener(this);
animationSecond = new TranslateAnimation(Animation.RELATIVE_TO_SELF,-1.0f,Animation.RELATIVE_TO_SELF,0f,
Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0f);
animationSecond.setDuration(5000);
animationSecond.setInterpolator(new LinearInterpolator());
animationSecond.setAnimationListener(this);
}
private void startAnimation() {
iv_one.startAnimation(animationFirst);
iv_two.startAnimation(animationSecond);
}
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
startAnimation();
}
@Override
public void onAnimationRepeat(Animation animation) {
}
}
<RelativeLayout
android:id="@+id/ll_progress"
android:layout_width="match_parent"
android:layout_height="@dimen/dp5"
>
<ImageView
android:id="@+id/iv_one"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/scroll_img"
android:scaleType="fitXY"
/>
<ImageView
android:id="@+id/iv_two"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/scroll_img"
android:scaleType="fitXY"
/>
</RelativeLayout>
