В пользовательском представлении, которое у меня есть, я использую Canvas.drawBitmap с исходным растровым изображением, ширина которого превышает 2048 пикселей. Это, конечно, вызывает проблемы при включенном аппаратном ускорении, когда LogCat выдает «W/OpenGLRenderer(4968): Bitmap слишком большой для загрузки в текстуру» каждый раз при вызове drawBitmap
. Чтобы обойти это, я попытался вызвать . ] setLayerType(View.LAYER_TYPE_SOFTWARE, null)
на мой взгляд. Единственная проблема в том, что это не помогает. Когда я пытаюсь запустить свое приложение, LogCat по-прежнему выдает предупреждения, и ничего не рисуется
Я не могу понять, почему это так.В этой статье на сайте Androidчетко сказано:
Вы можете отключить аппаратное ускорение для отдельного представления во время выполнения с помощью следующего кода:
myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
Я что-то делаю не так? Почему Android не соблюдает вызов setLayerType?
[если это важно: я провожу тестирование на Samsung Galaxy Tab 10.1 под управлением Android 3.2]