0

各位程序员好!

在圣诞节假期期间,我开始开发一个填字游戏应用程序,并在我的三星 Galaxy S2 上对其进行了彻底的测试,因为它是我当时唯一拥有的设备。现在回到工作岗位,我还可以使用 Acer Iconia 和 Kindle Fire HD。问题是我的应用在任一平板电脑上看起来完全模糊。

我的应用程序不使用任何预制图像,一切都是从 xml 可绘制对象(主要是渐变)中绘制的。虽然没有必要,但我将所有 xml 渐变复制到所有 dpi 文件夹(ldpi、mdpi、hdpi、xhdpi)。我还在清单中明确添加了supports-screens 标签,将smallscreens 添加到xlargescreens 和anydensity。没有任何效果。

我的绘图程序如下所示:

canvas.save();
canvas.translate(mPosX, mPosY);
canvas.scale(zoom, zoom,centerx,centery);
for(int x=0;x<mapsize;x++) 
    for(int y=0;y<mapsize;y++) {
        this.gc.setBounds(cells[x][y]);
        this.gc.draw(canvas);
    }
canvas.restore();

开始时,我找出设备的最小边(800x480 = 480),将其除以填字游戏中的单元格数(15),因此我得到 S2 的单元格大小为 32。我只画了 15x15 的瓷砖,每个瓷砖的尺寸为 32x32。这在我的手机上看起来很清晰,即使我放大 15 倍,文本和图形也保持清晰。不是在平板电脑上,图形从一开始就模糊不清,越放大越糟糕。在 Acer Iconia 上,箭头甚至没有绘制,它们都在左上角杂乱无章,尽管 Logcat 说偏移量是正确计算的,他们只是似乎没有在其他任何地方被吸引。我认识到的一件事是当我在 Acer Iconia 上启动应用程序时,Logcat 还说

01-07 11:39:35.292: D/libEGL(7914): loaded /system/lib/egl/libEGL_tegra.so

01-07 11:39:35.292: E/(7914): file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found!

01-07 11:39:35.292: I/(7914): Attempting to load EGL implementation /system/lib//egl/libEGL_tegra_impl
01-07 11:39:35.302: I/(7914): Loaded EGL implementation /system/lib//egl/libEGL_tegra_impl
01-07 11:39:35.302: D/libEGL(7914): loaded /system/lib/egl/libGLESv1_CM_tegra.so
01-07 11:39:35.302: D/libEGL(7914): loaded /system/lib/egl/libGLESv2_tegra.so
01-07 11:39:35.332: I/(7914): Loading GLESv2 implementation /system/lib//egl/libGLESv2_tegra_impl
01-07 11:39:35.332: D/OpenGLRenderer(7914): Enabling debug mode 0

加载某些驱动程序似乎存在问题,有人对此了解更多吗?在网上找不到太多关于它的信息。

最后是一些图片,上面有 1000 多字。

夏普 http://imageshack.us/photo/my-images/338/crosswords21.png http://imageshack.us/photo/my-images/593/crosswords22.png/ 三星 Galaxy S2

模糊,箭头在正确的位置 http://imageshack.us/photo/my-images/850/crosswordkindle1.png http://imageshack.us/photo/my-images/252/crosswordkindle2.png/ Kindle Fire HD

左上角的箭头模糊不清 http://imageshack.us/photo/my-images/259/crosswordiconia1.png http://imageshack.us/photo/my-images/803/crosswordiconia2.png/ Acer Iconia

请帮助我:) 提前谢谢。

刚刚发现这个我的 android 应用程序中的所有文本都变得模糊。似乎是 Iconia Tab 的常见问题。

4

1 回答 1

0

在 Kindle 和 Iconia 上,应用程序硬件加速标签似乎是自动激活的。当设置为 false 时,图形会变得清晰并再次清晰。现在(显然)有点慢,但它有效。相反,当我在 S2 上打开硬件加速时,图像变得像平板电脑一样模糊。

于 2013-01-07T15:49:11.007 回答