博客
关于我
Android界面背景图片不显示---三星手机
阅读量:510 次
发布时间:2019-03-07

本文共 831 字,大约阅读时间需要 2 分钟。

在应用中加载背景图片时遇到问题,特别是在某些设备上无法显示图片,需要仔细检查代码和资源文件。以下是针对此问题的详细分析和解决方案:

布局文件中的相对布局设置如下:

代码中通过onResume方法加载背景图片:

@Overrideprotected void onResume() {    super.onResume();    RelativeLayout layout = (RelativeLayout) findViewById(R.id.main_background);    InputStream is;    BitmapFactory.Options opt = new BitmapFactory.Options();    opt.inPreferredConfig = Bitmap.Config.ARGB_8888;    opt.inPurgeable = true;    opt.inInputShareable = true;    opt.inSampleSize = 2;    is = getResources().openRawResource(R.drawable.app_background);    Bitmap bm = BitmapFactory.decodeStream(is, null, opt);    BitmapDrawable bd = new BitmapDrawable(getResources(), bm);    layout.setBackgroundDrawable(bd);}

通过设置inSampleSize为2,可以减少图片内存占用,提高加载速度,但需确保图片质量足够。同时,使用inPurgeable和inInputShareable可有效管理内存资源,防止内存泄漏。最后,确保背景图片资源文件在不同设备上有统一的分辨率和压缩设置,以避免图片显示不一致的问题。

转载地址:http://ltnjz.baihongyu.com/

你可能感兴趣的文章
openEuler Summit 2022 成功举行,开启全场景创新新时代
查看>>
openEuler 正式开放:推动计算多样化时代的到来
查看>>
OpenEuler23.03欧拉系统_安装瀚高数据库企业版6.0.4_踩坑_安装以后系统无法联网_启动ens33网卡---国产瀚高数据库工作笔记002
查看>>
OpenFeign源码学习
查看>>
OpenFeign组件声明式服务调用
查看>>
openfire源码解读之将cache和session对象移入redis以提升性能
查看>>
Openfire身份认证绕过漏洞复现+利用(CVE-2023-32315)
查看>>
opengl 深度详解,多重采样时,如何在OpenGL纹理中解析深度值?
查看>>
OpenGL 的内置矩阵种种
查看>>
OpenGL中shader读取实现
查看>>
OpenGL的基本概念介绍
查看>>
OpenGL着色器、纹理开发案例
查看>>
opengl绘制几何体的函数
查看>>
OpenJDK11 下的HSDB工具使用入门
查看>>
openjdk踩坑
查看>>
openjudge 1792 迷宫 解析报告
查看>>
Openlayers Draw的用法、属性、方法、事件介绍
查看>>
Openlayers layer 基础及重点内容讲解
查看>>
Openlayers map三要素(view,target,layers),及其他参数属性方法介绍
查看>>
Openlayers Map事件基础及重点内容讲解
查看>>