1.創(chuàng)建一個類繼承與Relativelaout并且實現(xiàn)它的兩個方法
public class loding_progress_view extends RelativeLayout {
private ImageView outer;
public loding_progress_view(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public loding_progress_view(Context context){
super(context);
init();
}
2.創(chuàng)建一個init方法實現(xiàn)圖片的提取和添加
private void init(){
//內(nèi)部圖片
ImageView inner=new ImageView(getContext());
inner.setImageResource(R.drawable.github_loading_inner);
addView(inner);
//外部圖片
outer=new ImageView(getContext());
outer.setImageResource(R.drawable.github_loading_outer);
addView(outer);
}
3.引用一個onSizeChanged方法來實現(xiàn)外部的圖片的旋轉(zhuǎn)
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
RotateAnimation ra=new RotateAnimation(0,360,
getPivotX(),getPivotY());
ra.setDuration(1000);
ra.setRepeatMode(Animation.RESTART);
ra.setRepeatCount(Animation.INFINITE);
outer.startAnimation(ra);
}
4.在xml里面配置一個容器
<swu.lwk.a15_imageloading.loding_progress_view
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true"/>
5.最終結(jié)果
1572698045316.gif