2014-02-08 1 views
-1

런타임에 다른 장치의 텍스트 크기를 관리하는 방법. 나는 이것을 사용하려고 노력하지만 아무 변화가 없다. DIMEN 폴더에 내가 여러 장치에서 안드로이드의 텍스트 크기를 관리

<dimen name="textsize">21sp</dimen> 

을 설정하고 내가 사용 시간 실행 한 :

txt_font_change.setTextSize(TypedValue.COMPLEX_UNIT_PX,getResources().getDimensionPixelSize(R.dimen.textsize)); 

이 하나가 나를 도울 수 있습니까?

thanx and regards.

+0

내 대답을 확인하고 작동하는지 아닌지 알려주세요. –

답변

5

치수를 프로그램 적으로 설정할 필요가 없습니다. 모든 안드로이드 장치 해상도에 대해 설정된 텍스트 크기에 대해 dimens.xml을 사용했습니다. XML 파일에서

: 값 폴더에서

<TextView 
    android:id="@+id/txt_day_count" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:text="1" 
    android:textColor="@color/black" 
    android:textSize="@dimen/text_size" 
    android:textStyle="bold" /> 

값-hdpi에 => dimens.xml 값 폴더 값-MDPI => dimens.xml에서 (480X800)

<dimen name="text_size">20dp</dimen> 

(320 × 480)

값 폴더에서
<dimen name="text_size">16dp</dimen> 

값-sw360dp-notlong-hdpi에 => dimens.xml (540x960)

값 폴더 값-sw360dp-xhdpi 값 => dimens.xml (720x1280)

<dimen name="text_size">23dp</dimen> 

폴더 값-sw360dp-notlong-xhdpi => dimens.xml (768x1280)

에서 691,363,210
<dimen name="text_size">21dp</dimen> 

값 폴더에서

<dimen name="text_size">24dp</dimen 

값-sw360dp-notlong-xxhdpi => dimens.xml (1080x1920)

<dimen name="text_size">27dp</dimen 
+0

이 하나는 좋지만 너무 많은 XML 파일을 관리하고 싶지 않습니다. 그래서 난 단지 한 편에서 설정하고 모든 장치에서 프로그램 적으로 감지하고 싶습니다. – Hardik

+0

textSize를 프로그래밍 방식으로 설정하려면 다른 크기의 장치에 대해 서로 다른 조건을 확인해야합니다. –

+0

1080x1920 장치를 설정하고 싶습니다. – Hardik

관련 문제