硬件加速 - 未显示背景图像

时间:2013-12-22 12:23:57

标签: android android-layout hardware-acceleration

在我的应用程序中,我设置了android:hardwareAccelerated="true"。我有一个具有大图像(1600 x 2500)的布局。 当我运行我的应用程序时,背景已经消失,我有黑色背景。所以当我设置

myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

再次显示背景图片。当我将背景设置为颜色时,它可以正常工作。

那么这里的问题是什么,或者我做错了什么。当android:hardwareAccelerated打开时我想显示图像。

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/firstbg"
    android:clickable="true">
</LinearLayout>

1 个答案:

答案 0 :(得分:1)

使用android:hardwareAccelerated可让Android将您的图像上传到CPU内存。图像的大小存在限制,它还取决于openGL版本。我不记得最大尺寸是什么,但你的图像可能很大。它使用颜色作为用于渲染颜色的不同算法。

我相信如果您尝试使用较小的图像,它将适合您。

编辑:如果你必须使用大图片,你唯一的选择就是将它缩小到较小的平安状态并将其用作某种拼图,但它会影响你的表现。试着找到一种方法来减小它的大小。