l 从一个界面跳转到另一个界面出现闪退,报错提示:
android.view.InflateException: Binary XML file line #53:Error inflating class <unknown>
从stackoverflow找到的解决方案:当运行的时候,安卓会改变图片的大小(基于屏幕的尺寸和分辨率),安卓使用bitmap去重新改变图片的尺寸。所以,这个是内存非常敏感的行为。一个快速的解决方法是,将比较大的图片复制到drawable-ldpi,mdpi, hdpi 文件夹中。安卓会自动选择合适的文件并且重新改变他们的大小,
(上面是对stackoverflow的解释)
从stackoverflow找到的解决方案:
当运行的时候,安卓会改变图片的大小(基于屏幕的尺寸和分辨率),安卓使用bitmap去重新改变图片的尺寸。所以,这个是内存非常敏感的行为。一个快速的解决方法是,将比较大的图片复制到drawable-ldpi,mdpi, hdpi 文件夹中。安卓会自动选择合适的文件并且重新改变他们的大小,
(上面是对stackoverflow的解释)
但是,这样并没有解决,不过问题找对了,有时间学习一下bitmap再去解决,我用的方法是将产生报错的图片换了一张小一点的。
l 在尝试解决上一个问题时,用了如下方法:
InputStream is = this.getResources().openRawResource(+R.mipmap. low_carbon_background);
BitmapFactory.Options options = new BitmapFactory.Options();
options. inJustDecodeBounds = false;
options. inSampleSize = 1; //width,hight设为原来的十分一
Bitmap btp = BitmapFactory. decodeStream(is, null, options);
//低碳的背景图片
low_carbon_background =(LinearLayout) findViewById(R.id. low_carbon_background);
Drawable drawable = new BitmapDrawable( this.getResources(), btp);
low_carbon_background.setBackground(drawable);