Android基础动画之--即时预约等待加载过程
2016-09-28 23:49
309 查看
思路:两张一样的图片从不同的点同时向一个方向移动
效果图如下:
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>
最后吐槽有一个坑点,如果父布局用LinearLayout,则只有一个imageview有动画,用了RelativeLayout可以了,不知什么问题,有知道的可以告知一下,感激不尽
效果图如下:
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>
最后吐槽有一个坑点,如果父布局用LinearLayout,则只有一个imageview有动画,用了RelativeLayout可以了,不知什么问题,有知道的可以告知一下,感激不尽
相关文章推荐
- Android动画之仿美团加载数据等待时,小人奔跑进度动画对话框(附顺丰快递员奔跑效果)
- Android基础之加载动画
- Android 加载数据等待时 小人奔跑进度动画
- Android 加载数据或者联网等待的弹框动画
- Android动画之仿美团加载数据等待时,小人奔跑进度动画对话框(附顺丰快递员奔跑效果)
- Android带数字或红点的底部导航拦和联网等待加载动画示例
- Android进阶UI之加载数据等待时,小人奔跑进度动画对话框
- android image加载中等待动画
- android 弹出全局加载等待动画
- Android 自定义加载等待动画
- Android带数字或红点的底部导航拦和联网等待加载动画
- android自定义View基础系列一(模仿365日历PC版加载动画)
- Android动画之仿美团加载数据等待时,小人奔跑进度动画对话框(附顺丰快递员奔跑效果)
- android开发过程中自定义动画加载进度条实现过程
- Android动画之仿美团加载数据等待时,小人奔跑进度动画对话框(附顺丰快递员奔跑效果)
- android应用加载过程中的loading动画
- Android绘图基础——仿华为加载动画
- android基础--动画效果
- Android逐条加载ListView,实现动画更新
- Android中Animation动画熟悉过程3---- 尺寸伸缩动画效果 scale