####在开发中,可以通过getDrawable().getBounds().height()与getDrawable().getIntrinsicHeight()两种方法来获得图片资源的真实宽高####
ImageView在不同的分辨率的屏幕中获取的宽高值是不准确的,需要根据density缩放
// 通过getBounds() 获得ImageView中Image的真实宽高,
int dw = (int) (iv.getDrawable().getBounds().width());
int dh = (int) (iv.getDrawable().getBounds().height());
Log.i(TAG, MainActivity.this.getResources().getDisplayMetrics().density+"drawable_X = "
+ dw + ", drawable_Y = " + dh);
// 通过getIntrinsic获得ImageView中Image的真实宽高,
int inDw = iv.getDrawable().getIntrinsicWidth();
int inDh = iv.getDrawable().getIntrinsicHeight();
Log.i(TAG, MainActivity.this.getResources().getDisplayMetrics().density+
"Intrinsic_drawable_X = " + dw + ", Intrinsic_drawable_Y = " + dh);
在1280*720分辨率中 
在1920*1080分辨率中
####正确的获取方式如下:####
public class MainActivity extends Activity {
protected static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView iv = (ImageView) findViewById(R.id.iv);
iv.setImageResource(R.drawable.ic_launcher);
// 等待ImageVivew加载完成
iv.post(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
// ImageView的宽和高
Log.i(TAG, "iv_W = " + iv.getWidth() + ", iv_H = " + iv.getHeight());
// 屏幕密度
float density = MainActivity.this.getResources().getDisplayMetrics().density;
// 通过getIntrinsic 获得ImageView中Image的真实宽高,
int dw = (int) (iv.getDrawable().getBounds().width()/density);
int dh = (int) (iv.getDrawable().getBounds().height()/density);
Log.i(TAG, MainActivity.this.getResources().getDisplayMetrics().density
+"drawable_X = " + dw + ", drawable_Y = " + dh);
// 通过get获得ImageView中Image的真实宽高,
int inDw = (int) (iv.getDrawable().getIntrinsicWidth()/density);
int inDh = (int) (iv.getDrawable().getIntrinsicHeight()/density);
Log.i(TAG, MainActivity.this.getResources().getDisplayMetrics().density
+"Intrinsic_drawable_X = " + dw + ", Intrinsic_drawable_Y = " + dh);
}
});
}
}