我有一个布局,顶部有一些水平滚动,底部有一些文本框,剩下的空间放在中间,我用ImageView填充它。在该ImageView中我加载了一个位图。我们称之为ImageView 底部一个。在屏幕上获取像素大小,而不是实际大小?
现在,在ImageView之上,我动态加载另一个ImageView,用户可以通过拖动来移动它。第二个ImageView(顶部的一个)有一个小图标,它将覆盖在我的位图顶部并保存。把它想象成一个标志/水印。
这两个ImageView都在RelativeLayout中,所以我可以移动顶部布局。
现在我遇到的问题是,我无法获取ImageView的底部加载的位图的大小。
我曾尝试以下:
DisplayMetrics om = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(om);
tv.setText("W:" + b.getScaledWidth(om) + " H:" + b.getScaledHeight(om));
,但它不会工作,b.getScaledWidth(OM)回报我的位图的实际宽度,而不是一个在屏幕上,它应该是(在风景图像的情况下)480px,我正在测试的手机屏幕的大小。
其他信息:为什么我需要这是因为我在底部ImageView中显示的图像与ImageView的比例不同。所以我可以得到ImageView的大小,但是这个ImageView大于图像本身。因为我需要将顶部ImageView保留在底部ImageView中显示的图像边界内,所以我需要知道底部ImageView中图像的大小,而不是底部View的大小。
任何想法我做错了什么?