getMeasureHeight和getHeight獲取控制元件的寬和高
阿新 • • 發佈:2018-12-06
int mHeight = main_iv_showPic.getMeasuredHeight(); int mWidth = main_iv_showPic.getMeasuredWidth(); int width = main_iv_showPic.getWidth(); int height = main_iv_showPic.getHeight(); Log.d(TAG, "---mHeight:" + mHeight + "---height:" + height); Log.d(TAG, "---mWidth:" + mWidth + "---width:" + width);
資料顯示兩種資料是一樣的。
我的main_iv_showPic的寬跟資料一樣,高比資料大,但是圖片沒有縮放,然後我把高設定為資料那麼多,顯示的資料依舊是原來的,圖片顯示大小也依舊是原來的。。。
<ImageView android:id="@+id/main_iv_showPic" android:layout_width="500.0px" android:layout_height="671.0px" android:layout_centerHorizontal="true" android:layout_marginBottom="10.0px" android:layout_marginTop="5.0px" android:adjustViewBounds="true" android:contentDescription="@string/firstShowImage" android:scaleType="centerInside" />
還是資料比較好比較一點:
原來我的xml的imageview的寬和高設定的是:500,700.
然後getMeasureHeight和getHeight的值一直都是一樣,
打印出來的是:500,671,圖片顯示正常,(其實一直都有點顯示不完全,不知道為什麼,但是暫時沒管這個問題,所以暫且認為他是顯示正常的)。
然後我將xml的imageview的寬和高設定為:500,671,
然後打印出來還是500,671,圖片顯示正常,
然後我就鬱悶了,為什麼獲取控制元件的寬和高的時候,打印出來的寬和高不是我xml設定的大小呢,就算圖片沒有填滿控制元件那也應該是列印的是xml設定的資料啊。