Frecso磁盘缓存

DiskCacheConfig.Builder builder = DiskCacheConfig.newBuilder(this);
builder.setBaseDirectoryPath(getCacheDir());
DiskCacheConfig diskCacheConfig = builder.build();ImagePipelineConfig config = ImagePipelineConfig.newBuilder(this)
.setMainDiskCacheConfig(diskCacheConfig)
.build();
Fresco.initialize(this, config);
package com.bwie.day01;
import android.graphics.drawable.Animatable;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;

import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.drawee.controller.BaseControllerListener;
import com.facebook.drawee.controller.ControllerListener;
import com.facebook.drawee.drawable.ScalingUtils;
import com.facebook.drawee.generic.GenericDraweeHierarchy;
import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder;
import com.facebook.drawee.generic.RoundingParams;
import com.facebook.drawee.interfaces.DraweeController;
import com.facebook.drawee.view.SimpleDraweeView;
import com.facebook.imagepipeline.image.ImageInfo;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class MainActivity extends AppCompatActivity {
@BindView(R.id.yi)
Button yi;
@BindView(R.id.er)
Button er;
@BindView(R.id.san)
Button san;
@BindView(R.id.si)
Button si;
private SimpleDraweeView simple;
//url资源:
public static final String mImageUrl =
http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg”;
public static final String mErrorUrl =
http://pic39.nipic.com/20140226/18071023_1643006080dddd00_2.jpg”;
public static final String mGifUrl =
http://img.zcool.cn/community/0139505792e5fc0000018c1bbb7271.gif”;
private GenericDraweeHierarchyBuilder builder;
private RoundingParams parames;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
simple = findViewById(R.id.simpe);
simple.setImageURI(Uri.parse(mImageUrl));
}

@OnClick({R.id.yi, R.id.er, R.id.san, R.id.si})
public void onViewClicked(View view) {
    switch (view.getId()) {
        case R.id.yi:
            //圆形图片
            builder = new GenericDraweeHierarchyBuilder(getResources());
            parames = RoundingParams.asCircle();
            GenericDraweeHierarchy roundness = builder.setRoundingParams(parames).build();
            simple.setHierarchy(roundness);
            simple.setImageURI(Uri.parse(mImageUrl));
            break;
        case R.id.er:
            //圆角图片
            parames = RoundingParams.fromCornersRadius(50f);
            GenericDraweeHierarchy circularBead = builder.setRoundingParams(parames).build();
            simple.setHierarchy(circularBead);
            simple.setImageURI(Uri.parse(mImageUrl));
            break;
        case R.id.san:
            DraweeController controller = Fresco.newDraweeControllerBuilder()
                    .setUri(mGifUrl)
                    .setAutoPlayAnimations(false)
                    .build();
            simple.setController(controller);
            simple.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //拿到动画对象
                    Animatable animatableStart =simple.getController().getAnimatable();
                    //进行非空及是否动画在播放判断
                    if(animatableStart !=null&&!animatableStart.isRunning()) {
                        //动画停止播放,播放动画
                        animatableStart.start();
                    }else {
                        animatableStart.stop();
                    }
                }
            });
            break;

        case R.id.si:
            simple.setAspectRatio(3.33f);
            simple.setImageURI(Uri.parse(mImageUrl));
            break;
    }
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值