Using ProgressWheel

This commit is contained in:
Victor 2014-06-15 23:38:00 +03:00
parent 0161402ab4
commit 104bbb68fe

View File

@ -7,6 +7,7 @@ import java.io.InputStream;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
import java.net.URLConnection; import java.net.URLConnection;
import com.todddavies.components.progressbar.ProgressWheel;
import android.content.Context; import android.content.Context;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
@ -16,10 +17,10 @@ import android.os.Handler;
import android.os.Handler.Callback; import android.os.Handler.Callback;
import android.os.Message; import android.os.Message;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.view.Gravity;
import android.view.View; import android.view.View;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.ProgressBar;
/** /**
* Free for anyone to use, just say thanks and share :-) * Free for anyone to use, just say thanks and share :-)
@ -33,7 +34,7 @@ public final class LoaderImageView extends FrameLayout {
private Context mContext; private Context mContext;
private Drawable mDrawable; private Drawable mDrawable;
private ProgressBar mProgressBar; private ProgressWheel mProgressBar;
private ImageView mImage; private ImageView mImage;
/** /**
@ -86,10 +87,11 @@ public final class LoaderImageView extends FrameLayout {
mImage = new ImageView(mContext); mImage = new ImageView(mContext);
mImage.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); mImage.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
mProgressBar = new ProgressBar(mContext, null, android.R.attr.progressBarStyleHorizontal); mProgressBar = new ProgressWheel(mContext);
mProgressBar.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); mProgressBar.setLayoutParams(new LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT,
Gravity.CENTER));
mProgressBar.setProgress(0); mProgressBar.setProgress(0);
mProgressBar.setMax(100);
addView(mImage); addView(mImage);
addView(mProgressBar); addView(mProgressBar);
@ -108,7 +110,8 @@ public final class LoaderImageView extends FrameLayout {
mDrawable = null; mDrawable = null;
mProgressBar.setVisibility(View.VISIBLE); mProgressBar.setVisibility(View.VISIBLE);
mProgressBar.setProgress(0); mProgressBar.setProgress(0);
mProgressBar.setMax(100); mProgressBar.spin();
// mProgressBar.setMax(100);
new Thread() { new Thread() {
@Override @Override
public void run() { public void run() {
@ -140,6 +143,7 @@ public final class LoaderImageView extends FrameLayout {
mProgressBar.setVisibility(View.GONE); mProgressBar.setVisibility(View.GONE);
break; break;
case PROGRESS: case PROGRESS:
mProgressBar.stopSpinning();
mProgressBar.setProgress(msg.arg1); mProgressBar.setProgress(msg.arg1);
break; break;
case FAILED: case FAILED:
@ -178,7 +182,7 @@ public final class LoaderImageView extends FrameLayout {
while ((count = input.read(buffer)) != -1) { while ((count = input.read(buffer)) != -1) {
total += count; total += count;
// publishing the progress.... // publishing the progress....
imageLoadedHandler.obtainMessage(PROGRESS, (int) ((total * 100) / lenghtOfFile), 0) imageLoadedHandler.obtainMessage(PROGRESS, (int) ((total * 360) / lenghtOfFile), 0)
.sendToTarget(); .sendToTarget();
// writing data // writing data
output.write(buffer, 0, count); output.write(buffer, 0, count);