2011-10-09 77 views
0

佈局PARAMS設置TextView的,我相信你可以設置layout_width和layout_height動態使用類似TextView元素:Android的 - 以毫米爲

LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT); 
centimeterLayout.addView(textview, lparams); 

可是 - 我怎麼設置佈局寬度和高度等單位 - 例如我想將我的文本視圖的佈局寬度設置爲20毫米。我怎麼做?

回答

1

LayoutParams任取的一個常量FILL_PARENTWRAP_CONTENT或像素值。由於您要使用毫米,因此必須將毫米尺寸轉換爲像素尺寸。這樣做是很容易的:

Resources r = getResources(); 
float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_MM, 20, 
            r.getDisplayMetrics()); 

在本例中爲20mm轉換爲可以在您的LayoutParams使用像素尺寸。您也可以使用其他尺寸,例如TypedValue.COMPLEX_UNIT_DIP用於dp /dip¹。只需改變參數中的常量。 Android文檔有list of useable dimensions

¹密度獨立像素,高度推薦的尺寸,適應多種不同的屏幕尺寸和密度。使用mm並不是最好的辦法,因爲你的文本可能在大屏幕上看起來不錯,並佔據大屏幕的一小部分,或者相反 - 這並不理想。我也推薦sp的字體大小。詳細信息請參見維度列表。

相關問題