Ara*_* GM 8 android canvas opengl-es hardware-acceleration
我有一个TextView
内部ReleativeLayout
,我在运行时设置了一个大文本.问题是关于我的ReleativeLayout
背景,这是一个带边框的圆形.它没有设置背景,在Logcat中它说:
12-12 16:26:56.602: W/OpenGLRenderer(7400): Path too large to be rendered into a texture
Run Code Online (Sandbox Code Playgroud)
我已经通过在清单文件中将android:hardwareAccelerated变为false 来解决了这个问题(一个活动不是整个应用程序),但是当我在Activity中使用滑动菜单时它会引发另一个错误,它告诉我:
12-12 16:37:05.717: E/AndroidRuntime(9520): java.lang.RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap@4633e3f8
Run Code Online (Sandbox Code Playgroud)
我只有一个没有任何位图的ListView,我的SlidingMenu里面是6Wunderkinder SlidingLayer库.
任何帮助,将不胜感激.
Ara*_* GM 16
最后通过将我的Fragment ScrollView的LayerType从HardwareAcceleration更改为Software来解决它,而没有为整个Activity设置HardwareAcceleration false,导致SlidingMenu中提到的奇怪的行为:
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layerType="software">
Run Code Online (Sandbox Code Playgroud)
小智 5
当我在 rootview 中有一个 drawable 的滚动视图太长时,就会发生这种情况,这对每个设备都有独特的影响。我的 Nexus 9 几乎可以显示任何内容,但我的 sony 紧凑型手机不会。关闭硬件加速是不值得的,因为在低端设备上,您可能会有一个非常不稳定的应用程序。
在这种情况下,您可能应该考虑使用 listview 或 recyclerview 来确保您的背景元素不大于屏幕。即使在不太长的滚动视图背景中的 XML 可绘制对象也会产生此错误。我选择安全并重新设计元素,简单地从滚动视图中删除背景可能是一个 options ,并将它们作为瓷砖放置在内部元素中。
这看起来很奇怪,但它必须与该 rootview 在较长的滚动视图中呈现背景的方式有关,因为滚动视图本身可能很长,有许多复杂的元素没有问题,背景颜色也从来不是问题..
归档时间: |
|
查看次数: |
5901 次 |
最近记录: |