最近在做Android8.0系统适配的时候发现个问题,8.0系统的手机上在drawBitmap的时候,当Image的尺寸超过一定限度(发现问题的尺寸是512*256),并且绘制次数较多(通常是循环内),就会变得非常卡,一帧两帧的样子。如果仅仅只绘制一次,那么帧数倒是没太大变化,基本没多大影响,但是一旦放到循环内,帧数立马就下来了。 for(int i = 0; i < 4 ; ++i)
{
for(int j = 0; j < 5 ; ++j)
{
//封装的函数,最终就是 drawBitmap(Bitmap bitmap, float left, float top, Paint paint)
Tools.drawImage(g, imgTest, 10*i, 10*j);
}
}有没有大神遇到过的?或者知道是什么情况的,求探讨解决!只在8.0以上的手机上会这样,同样的代码,7.0以下的手机运行顺畅。
{
for(int j = 0; j < 5 ; ++j)
{
//封装的函数,最终就是 drawBitmap(Bitmap bitmap, float left, float top, Paint paint)
Tools.drawImage(g, imgTest, 10*i, 10*j);
}
}有没有大神遇到过的?或者知道是什么情况的,求探讨解决!只在8.0以上的手机上会这样,同样的代码,7.0以下的手机运行顺畅。
看来是android 8.0 的一个bug,可以安装下最新的补丁或升级到8.1试试
不知道这个有用没有, 缩放确实 能降低帧数, 我的缩放设置为1时速度还可以, 2时就明显慢很多了!