【发布时间】:2015-04-05 10:51:24
【问题描述】:
我在 drawable 目录中有一个 960x1440 大小的图像文件。 当应用程序启动时,图像没有作为背景加载,并且在我看到的 logcat 中:
位图太大,无法上传到纹理中(2880x4320,最大值=4096x4096)
如果图像是 960x1440,为什么会显示 2880x4320?
位图通过xml加载:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/launcher_bg"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
【问题讨论】:
-
请提供一些示例代码,用于加载纹理。
-
如果其中没有大文件,您是否检查了所有可绘制文件夹?您的应用程序在没有背景图像的情况下工作?那是什么图片文件,png,jpg?
-
我只有 1 个文件用于 1.02 mb 的所有分辨率(可绘制)和 960x1440 大小...是的,应用程序在没有 bg 图像的情况下运行...但不是在所有设备上,仅目前在 Nexus 5 上
-
我不相信这一点,抱歉 ;) 你说它只能在 nexus 5 上运行,我认为你的其他测试设备比较旧,对吧?该消息说明了一些关于纹理的内容,表明soc的opengl引擎,它对不同的设备和soc有不同的限制。
-
仅在 Nexus 5 上不会加载图像...