等待進度條---三個圓點一排間隔放大縮小動畫
阿新 • • 發佈:2019-01-24
public class ProgressUtils {
View dialogview;
private ImageView iamge1,iamge2,iamge3;
Dialog progress ;
public ProgressUtils(Context context){
progress = new Dialog(context,R.style.CustomDialog);
dialogview= LayoutInflater.from(context).inflate(R.layout.pdialog,null);
iamge1=(ImageView)dialogview.findViewById(R.id.dialog1);
iamge2=(ImageView)dialogview.findViewById(R.id.dialog2);
iamge3=(ImageView)dialogview.findViewById(R.id.dialog3);
final Animation largeranimation1 = AnimationUtils.loadAnimation(context, R.anim.larger);
final Animation largeranimation2 = AnimationUtils.loadAnimation(context, R.anim.larger);
final Animation largeranimation3 = AnimationUtils.loadAnimation(context, R.anim.larger);
final Animation smallanimation1 = AnimationUtils.loadAnimation(context, R.anim.small);
final Animation smallanimation2 = AnimationUtils.loadAnimation(context, R.anim.small);
final Animation smallanimation3 = AnimationUtils.loadAnimation(context, R.anim.small);
iamge1.startAnimation(largeranimation1);
new Handler().postDelayed(new Runnable() {
public void run() {
iamge2.startAnimation(largeranimation2);
}
}, 150);
new Handler().postDelayed(new Runnable() {
public void run() {
iamge3.startAnimation(largeranimation3);
}
}, 300);
largeranimation1.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge1.startAnimation(smallanimation1);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
smallanimation1.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge1.startAnimation(largeranimation1);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
largeranimation2.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge2.startAnimation(smallanimation2);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
smallanimation2.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge2.startAnimation(largeranimation2);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
largeranimation3.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge3.startAnimation(smallanimation3);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
smallanimation3.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
iamge3.startAnimation(largeranimation3);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
progress.requestWindowFeature(Window.FEATURE_NO_TITLE);
progress.setContentView(dialogview);
}
public ProgressUtils(Context context,String msg){
progress = new ProgressDialog(context);
progress.setTitle("提示");
//progress.setMessage("正在努力載入資料中...");
//progress.setMessage(msg);
}
public void setCanel(boolean flag){
progress.setCancelable(flag);
}
public void setMessager(CharSequence str){
// progress.setMessage(str);
}
public void dismiss(){
progress.dismiss();
}
public void show(){
progress.show();
}
}