Android 超大图预览 防止OOM

复制代码
package com.blink.analysis.act;

import android.widget.ImageView;

import androidx.recyclerview.widget.GridLayoutManager;

import com.alibaba.android.arouter.facade.annotation.Route;
import com.blink.analysis.R;
import com.blink.analysis.adapter.PreviewAdapter;
import com.blink.analysis.databinding.ActivityBigImageBinding;
import com.blink.analysis.databinding.ActivityPreviewImageBinding;
import com.blink.base.utils.ImagesUtils;
import com.blink.golfpal.base.BindingBaseActivity;
import com.blink.golfpal.base.RoutePathCommon;
import com.davemorrissey.labs.subscaleview.ImageSource;

import java.util.ArrayList;

@Route(path = RoutePathCommon.Analysis.BIG_IMAGE)
public class BigImageActivity extends BindingBaseActivity<ActivityBigImageBinding> {


    @Override
    protected int getContentViewLayoutID() {
        return R.layout.activity_big_image;
    }

    @Override
    protected void initViewsAndEvents() {
        initTitle("大图片预览");

//       mBinding.imageView.setImage(ImageSource.resource(R.mipmap.ic_scan_image_front_left));
//       mBinding.imageView.setImage(ImageSource.asset("map.png"));
//      mBinding.imageView.setImage(ImageSource.uri("/sdcard/DCIM/map.JPG"));
//      mBinding.imageView.setImage(ImageSource.bitmap(bitmap));
    }


}

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:ignore="MissingDefaultResource">

    <data>

    </data>

    <LinearLayout
        android:id="@+id/ll_root"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/white"
        android:orientation="vertical">

        <include
            android:id="@+id/include_title"
            layout="@layout/layout_common_title_bar_white"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

    </LinearLayout>


</layout>

    api 'com.davemorrissey.labs:subsampling-scale-image-view-androidx:3.10.0'

其他

复制代码
implementation 'com.github.davemorrissey.labs:subsampling-scale-image-view:3.10.0'
相关推荐
胖虎119 分钟前
Android 文件下载实践:基于 OkHttp 的完整实现与思考
android·okhttp·下载文件·安卓下载·安卓中的下载
_李小白24 分钟前
【Android 美颜相机】第四天:CameraLoader、Camera1Loader 与 Camera2Loader
android·数码相机
00后程序员张27 分钟前
iOS APP 性能测试工具,监控CPU,实时日志输出
android·ios·小程序·https·uni-app·iphone·webview
YIN_尹35 分钟前
【MySQL】数据类型(下)
android·mysql·adb
invicinble43 分钟前
认识es的多个维度
android·大数据·elasticsearch
前端切图仔0011 小时前
Chrome 扩展程序上架指南
android·java·javascript·google
黄林晴1 小时前
Compose Multiplatform 1.10.0 重磅发布!三大核心升级,跨平台开发效率再提升
android·android jetpack
锁我喉是吧1 小时前
Android studio 编译faiss
android·android studio·faiss
鹏程十八少1 小时前
3. Android 腾讯开源的 Shadow,凭什么成为插件化“终极方案”?
android·前端·面试
TheNextByte11 小时前
如何通过蓝牙将联系人从Android传输到 iPhone
android·cocoa·iphone