2011-10-09 4 views
0

에 텍스트 뷰에 레이아웃 PARAMS를 설정 난 당신이 같은 것을 사용하여 동적 요소를 텍스트 뷰에 layout_width와 layout_height를 설정할 수 있다고 생각 - 내가 다른 단위로 레이아웃 폭과 높이를 설정하는 방법안드로이드는 밀리미터

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

하지만 - 예 내 텍스트보기의 레이아웃 너비를 20mm로 설정하고 싶습니다. 어떻게해야합니까?

답변

1

LayoutParams 어느 하나의 정수를 취할 (FILL_PARENT, WRAP_CONTENT) 또는 화소 값. 밀리미터를 사용하려면 밀리미터 치수를 픽셀 치수로 변환해야합니다. 이렇게하면 아주 쉽게 :

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

은, 20mm는 당신이 당신의 LayoutParams에서 사용할 수있는 픽셀 차원으로 변환됩니다. dp/dip¹에 TypedValue.COMPLEX_UNIT_DIP과 같은 다른 차원도 사용할 수 있습니다. 인수의 상수를 변경하십시오. 안드로이드 의사는 list of useable dimensions입니다.

¹ 밀도 독립 픽셀. 다양한 크기와 밀도로 조정할 수있는 권장 크기입니다. mm을 사용하는 것은 일을하는 가장 좋은 방법이 아닙니다. 텍스트가 큰 화면에서 잘 보이고 작은 화면의 큰 부분을 채우거나 그 반대의 경우가 이상적입니다. 나는 글꼴 크기를 위해 sp를 추천한다. 자세한 내용은 치수 목록을 참조하십시오.