本文主要介绍如何使用 subsampling-scale-image-view 加载 TPG 超大图片。
安装 subsampling-scale-image-view 和 TPG SDK
implementation 'com.qcloud.cos:tpg:1.4.0'//如果出现beacon灯塔冲突,引入-nobeacon即可//implementation 'com.qcloud.cos:tpg-nobeacon:1.4.0'implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.10.0'// AndroidX请使用// implementation 'com.davemorrissey.labs:subsampling-scale-image-view-androidx:3.10.0'
步骤一:获取 SubsamplingScaleImageView 控件
SubsamplingScaleImageView subsamplingScaleImageView = findViewById(R.id.subsampling_scale_image_view);
步骤二:注册解码器
// 设置TPG图片解码器subsamplingScaleImageView.setBitmapDecoderClass(TpgSubsamplingImageDecoder.class);subsamplingScaleImageView.setRegionDecoderClass(TpgSubsamplingImageRegionDecoder.class);
如果要切换会普通图片加载,请切换会默认解码器,如下:
// 设置普通图片解码器subsamplingScaleImageView.setBitmapDecoderClass(SkiaImageDecoder.class);subsamplingScaleImageView.setRegionDecoderClass(SkiaImageRegionDecoder.class);
步骤三:使用 subsampling-scale-image-view 加载图片
// 加载 uri 图片subsamplingScaleImageView.setImage(ImageSource.uri(uri));// 加载 assets 图片subsamplingScaleImageView.setImage(ImageSource.asset("test.tpg"));// 加载 resource 图片subsamplingScaleImageView.setImage(ImageSource.resource(R.raw.tpg));