Android大图片加载处理

 BitmapFactory.Options options=new BitmapFactory.Options();//创建权利
                //先不计算内存
                options.inJustDecodeBounds=true;
                BitmapFactory.decodeResource(getResources(),R.mipmap.bitmap,options);
                //调用Options方法来获取图片宽高
                int outHeight = options.outHeight;
                int outWidth = options.outWidth;
                Log.d(TAG,"outHeight == >"+outHeight);
                Log.d(TAG,"outWidth == >"+outWidth);
                //拿控件的尺寸
                int measuredHeight = result_image.getMeasuredHeight();
                int measuredWidth = result_image.getMeasuredWidth();
                Log.d(TAG,"measureHeight ==>"+measuredHeight);
                Log.d(TAG,"measureWidth ==>"+measuredWidth);
                //默认不改变大小
                options.inSampleSize=1;
                //图片的宽度/控件的宽度
                //图片的高度/控件的高度
                //取两者间的最小值
                if (outHeight>measuredHeight||outWidth>measuredWidth){
                    int subHeight = outHeight / measuredHeight;
                    int subWidth = outWidth / measuredWidth;
                    options.inSampleSize=subHeight>subWidth?subWidth : subHeight;//
                }
                options.inJustDecodeBounds=false;//可以设置进去了
                Log.d(TAG,"options.inSampleSize==>"+options.inSampleSize);
                //根据控件大小,动态计算sample值
                Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.bitmap, options);
                result_image.setImageBitmap(bitmap);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值