/**
*
*/
package com.hupu.games.activity;
import it.sephiroth.android.library.imagezoom.ImageViewTouch;
import it.sephiroth.android.library.imagezoom.ImageViewTouch.OnImageViewTouchDoubleTapListener;
import it.sephiroth.android.library.imagezoom.ImageViewTouch.OnImageViewTouchSingleTapListener;
import it.sephiroth.android.library.imagezoom.ImageViewTouchBase;
import it.sephiroth.android.library.imagezoom.ImageViewTouchBase.OnDrawableChangeListener;
import android.graphics.Bitmap;
import android.graphics.Matrix;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.util.Log;
import android.widget.ImageView;
import com.hupu.games.R;
import com.hupu.games.common.HupuLog;
import com.koushikdutta.urlimageviewhelper.UrlImageViewCallback;
import com.koushikdutta.urlimageviewhelper.UrlImageViewHelper;
/**
* @author
*/
public class ShowImgActivity extends HupuBaseActivity {
private String url;
private ImageViewTouch mImage;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
HupuLog.e("papa", "url========"+getIntent().getStringExtra("url"));
if (getIntent().getStringExtra("url") != null) {
url = getIntent().getStringExtra("url");
}else {
finish();
}
setContentView(R.layout.layout_show_img);
}
@Override
public void onContentChanged() {
mImage = (ImageViewTouch) findViewById(R.id.image);
//mImage.setDisplayType(DisplayType.FIT_IF_BIGGER);
setOnClickListener(R.id.image);
setOnClickListener(R.id.btn_download);
mImage.setSingleTapListener(new OnImageViewTouchSingleTapListener() {
@Override
public void onSingleTapConfirmed() {
//HupuLog.d("papa", "onSingleTapConfirmed");
finish();
}
});
mImage.setDoubleTapListener(new OnImageViewTouchDoubleTapListener() {
@Override
public void onDoubleTap() {
//Log.d("papa", "onDoubleTap");
}
});
mImage.setOnDrawableChangedListener(new OnDrawableChangeListener() {
@Override
public void onDrawableChanged(Drawable drawable) {
//Log.i("papa", "onBitmapChanged: " + drawable);
}
});
UrlImageViewHelper.loadUrlDrawable(
this, url,
new downLoadOk());
}
Matrix imageMatrix;
Bitmap downloadBitmap;
class downLoadOk implements UrlImageViewCallback {
@Override
public void onLoaded(ImageView imageView, final Bitmap loadedBitmap,
String url, boolean loadedFromCache) {
// TODO Auto-generated method stub
downloadBitmap = loadedBitmap;
if( null == imageMatrix ) {
imageMatrix = new Matrix();
}
float scaleWidth = ((float) mImage.getWidth())
/ loadedBitmap.getWidth();
//imageMatrix.postScale(scaleWidth, scaleWidth);
mImage.setImageBitmap(loadedBitmap, imageMatrix, scaleWidth, ImageViewTouchBase.ZOOM_INVALID );
}
}
@Override
public void treatClickEvent(int id) {
super.treatClickEvent(id);
switch (id) {
case R.id.image:
finish();
break;
case R.id.btn_download:
if (downloadBitmap !=null) {
mApp.saveBitmap(url, downloadBitmap);
}
break;
}
}
}