如何在Android中计算位图像素大小

如何在Android中计算位图像素大小,android,bitmap,pixel,Android,Bitmap,Pixel,我使用位图从res加载了一个640x480(像素)jpg图像 bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.bmp); 但我发现: bitmap.getWitdh()的值为1280 bitmap.getHeight()的值是960 bitmap.getRowBytes()的值是2560 为什么?这取决于你的手机。由于android支持多个屏幕,为了允许位图在不同屏幕上以相同的方式缩放,原始位图被存储以满足屏

我使用位图从res加载了一个640x480(像素)jpg图像

bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.bmp);
但我发现:

  • bitmap.getWitdh()的值为1280
  • bitmap.getHeight()的值是960
  • bitmap.getRowBytes()的值是2560

为什么?这取决于你的手机。由于android支持多个屏幕,为了允许位图在不同屏幕上以相同的方式缩放,原始位图被存储以满足屏幕的密度。根据您发布的值,您的手机似乎有一个xdpi屏幕。如果您的手机是mdpi,那么getHeight()和getWidth可能会让您返回480和640。有关详细信息,请参见,这是因为您没有在特定字段中指定任何
位图工厂。选项。尝试使用方法代替