我有一个尺寸为537 * 233
. 这显示在我的片段中。
我也在通过代码计算这个位图的高度。
我开始知道,只需使用,
image.getHeight()
将始终返回 0。
然后我发现将相同的方法放在覆盖的方法中onGlobalLayout()
会给出实际的高度。
我这样做了。请参阅我的SO 帖子以获取链接。
现在我得到的高度是155。
我也试过用,
BitmapDrawable bd = (BitmapDrawable) getResources().getDrawable(R.drawable.chart);
imgHeight = bd.getBitmap().getHeight();
我再次得到的高度是155。
根据上述尺寸,高度应为233
。
我在模拟器中也看到了相同的高度。
为什么差异和/或我认为是它的实际高度?
更新:
好的,我的图表在里面drawable-hdpi
,我的设备的密度是160
. 因此,当我将图表图像放入drawable
文件夹时,我得到了正确的高度。但是,如果图表高度是固定的(233),为什么在某些设备中我的图表高度足够大以与我的底部时间线重叠。虽然我知道这可能是因为近似值而不是准确的值(密度、分辨率)导致了差异。但是,任何想法如何解决这个问题?