当前位置: 首页 > news >正文

青岛专业做商业房的网站合同模板网站

青岛专业做商业房的网站,合同模板网站,做足彩推荐赚钱的网站,网站推荐2021Android加载图片时#xff0c;对于分辨率小#xff0c;配置低的机子#xff0c;很容易发生OutOfMemoryError。手机的内存比图片的大很多#xff0c;怎么会这样#xff1f; 在设置Android虚拟机的内存时#xff1a; RAM#xff1a;模拟器的内存空间 VM Heap#xff1a;…Android加载图片时对于分辨率小配置低的机子很容易发生OutOfMemoryError。手机的内存比图片的大很多怎么会这样 在设置Android虚拟机的内存时 RAM模拟器的内存空间 VM Heapdalvik虚拟机最大占用内存也就是单个进程的最大占用内存。 VM Heap高配的手机可能有32M,64M,128M而低配的手机一般是16M分辨率越大的手机一般分配的也比较多。 Android系统对dalvik的vm heapsize作了硬性限制当java进程申请的java空间超过阈值时就会抛出OOM异常。也就是说RAM充足也会发生OOM的异常。 -------------------- VM Heap大小16mb当应用加载一张大图时加载图片所需要的内存空间不是按照图片大小算的而是按照图片的像素点来算的。 图片像素点计算 1张叫juhua.jsp的图片大小1.27MB分辨率3840*216024位。 * Android保存图片像素信息是用ARGB保存* A0-255,需要一个长度为8的二进制数字占用1个字节 * R0-255,需要一个长度为8的二进制数字占用1个字节  * G0-255,需要一个长度为8的二进制数字占用1个字节  * B0-255,需要一个长度为8的二进制数字占用1个字节 3840*2160*433177600字节/1024/102431.640MB 超过了VM Heap的16MB报内存溢出 10-27 06:16:27.645: I/dalvikvm-heap(1894): Forcing collection of SoftReferences for 33177612-byte allocation 10-27 06:16:27.645: E/dalvikvm-heap(1894): Out of memory on a 33177612-byte allocation. 10-27 06:16:27.655: E/AndroidRuntime(1894): Caused by: java.lang.OutOfMemoryError ************************************ 解决方法 按比例缩小图片再加载。 现有手机屏幕分辨率 320*480 宽比3840/32012 高比2160/4804 选择比例大的数字12 缩放后再设置就不会溢出了。 31.640MB/122.64mb 代码例子 RelativeLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context.MainActivity Buttonandroid:idid/btn1android:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:text点击加载大图片(OOO)android:onClickloadPic/Buttonandroid:idid/btn2android:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:layout_belowid/btn1android:text点击缩放加载大图片android:onClickscaleLoadPic/ImageView android:idid/iv_picandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:layout_belowid/btn2//RelativeLayout package com.example.loadbigpic;import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.BitmapFactory.Options; import android.os.Bundle; import android.view.Display; import android.view.View; import android.widget.ImageView;public class MainActivity extends Activity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public void loadPic(View v){/** BitmapFactory.decodeResource* 这个带两个参数的方法第一个参数是包含你要加载的位图资源文件的对象一般写成 getResources就ok了* 第二个时你需要加载的位图资源的Id。BitmapFactory.decodeResource带三个参数的方法前两个和上面的方法一样。第三个参数应该是对你要加载的位图是否需要完整显示如果你只需要部分可以在这里定制。*/Bitmap bmBitmapFactory.decodeResource(getResources(),R.drawable.juhua);ImageView iv_pic(ImageView) findViewById(R.id.iv_pic);iv_pic.setImageBitmap(bm);}public void scaleLoadPic(View v){Options optsnew Options();//默认为false设为true则decoder返回null//即BitmapFactory.decodeResource(getResources(),R.drawable.juhua,opts);返回null//但会返回图片的参数的信息到Options对象里//不解析图片到内存里opts.inJustDecodeBoundstrue;BitmapFactory.decodeResource(getResources(),R.drawable.juhua,opts);//获取图片的宽高int imageWidthopts.outWidth;int imageHeigthopts.outHeight;//获取屏幕的高宽Display dpgetWindowManager().getDefaultDisplay();//在高版本里有新的方法获取但图片加载是常用功能要兼容低版本所以过时了也用int screenWidthdp.getWidth();int screenHeightdp.getHeight();//计算缩放比例int scale1;int scaleWidthimageWidth/screenWidth;int scaleHeightimageHeigth/screenHeight;//取缩放比例取那个大的值if(scaleWidthscaleHeight scaleWidth1){scalescaleWidth;}else if(scaleWidthscaleHeight scaleHeight1){scalescaleHeight;}//设置缩放比例opts.inSampleSizescale;opts.inJustDecodeBoundsfalse;Bitmap bmBitmapFactory.decodeResource(getResources(),R.drawable.juhua,opts);ImageView iv_pic(ImageView) findViewById(R.id.iv_pic);iv_pic.setImageBitmap(bm);}}
http://www.yutouwan.com/news/356479/

相关文章:

  • 为进一步加强校园网站建设外贸建站选择哪个服务器好
  • idea制作网站域名分类网站
  • 建设工程安全事故在哪个网站查网页设计专业培训班
  • 叫外包公司做网站不肯给源代码的开发公司融资专干笔试
  • 新农村建设投诉在哪个网站网页美化工具有哪些
  • 济源制作网站网络培训意义
  • 国内免费iphone网站网站平台建设实训总结
  • 表白网站建设网站设计师需要什么知识与技能
  • 河南省建设厅网站取消劳务资质大学网页制作学什么
  • 企业营销策划公司国外seo做的好的网站
  • 做视频上什么网站找创意网页设计是什么行业的
  • 快速搭建网站前端微信页面转wordpress
  • 不开网店怎么做淘宝网站手机模板制作软件app
  • 传统网站和手机网站的区别是什么意思wordpress如何让页面显示一篇文章
  • 可道网站建设安全标准化建设网站
  • 深圳网站建设yuntianxia做学校教务处网站
  • 企业免费网站怎么自己做直播网站
  • 国家建设部网站注册工程师人员查询Wordpress和jamel
  • 建设领域信用系统网站学生处网站建设招标公告
  • 佛山网站建设运营网络互联网推广
  • 重庆联通的网站建设视频网站能备案吗
  • 网站开发人员应该用什么浏览器电脑版 做网站尺寸
  • 做爰的视频网站建一个大型网站多少钱
  • 南京自助建站软件wordpress 登录密码
  • 注册公司网站怎么收费怎样去推广自己的网店
  • 量个网站一个域名c++编程软件
  • 建设网站需要支付什么插件费用吗京东的网站建设
  • python小学生入门教程郑州网站优化公司
  • 韶关网站seo深圳seo博客
  • 深圳市哪些公司做网站好天堂 在线地址8