平板电脑解析问题

时间:2012-02-10 07:20:30

标签: android resolution tablet

我有一个带有1280*800的平板电脑摩托车xoom我在我的项目中的可绘制文件夹中有一个图像,当我检查该图像的大小时显示1280*755但当我使用此图像时我的项目。

调试它以了解显示853*503的大小,显然它不适合平板电脑。我也在这里附上了图片。

我通过使用以下代码获得宽度和高度。

BitmapDrawable bd=(BitmapDrawable)this.getResources().getDrawable(R.drawable.fish_normal);
int height=bd.getBitmap().getHeight();
int width=bd.getBitmap().getWidth();

2 个答案:

答案 0 :(得分:2)

我认为你在hdpi文件夹中使用图像。

// for hdpi

853 * 240 / 160 =1279.5 
503 * 240 / 160 = 754.5

// 750 + 50剩余50像素的底栏

1280 * 160/160-1280 //for mdpi

因此,您的资源的广义大小(假设它们是全屏):

ldpi
Vertical = 426 * 120 / 160 = 319.5px
Horizontal = 320 * 120 / 160 = 240px
mdpi
Vertical = 470 * 160 / 160 = 470px
Horizontal = 320 * 160 / 160 = 320px
hdpi
Vertical = 640 * 240 / 160 = 960px
Horizontal = 480 * 240 / 160 = 720px

答案 1 :(得分:1)

首先,Honeycomb和Ice Cream Sandwich设备的屏幕底部有一个软按钮栏,占据了一些屏幕空间。在你的情况下,它似乎需要45 px(800 - 755)。

然后你必须考虑密度。我猜测摩托​​罗拉Xoom是1.5。您可以通过运行来检查:

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
Log.d("TAG", dm.density);

这意味着要填充屏幕,您必须将屏幕分辨率除以密度,以获得图像所需的大小。