2016-07-07 5 views
2

내 응용 프로그램에서 글꼴 크기를 변경하려면 조치를 취해야합니다. 텍스트 크기 (작은, 중간 및 큰)에 대한 세 가지 값을 유지하려고합니다. 어떻게 전환해야합니까? 내 생각은 한 번에 한 세트의 글꼴 자원을 사용하는 것입니다. Theme.AppCompat.DayNight.DarkActionBar에서android에서 다른 크기의 텍스트를 사용하는 방법은 무엇입니까?

가에 야간 모드 사이를 이동하고에 떨어져 내가

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); 

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); 

를 호출 할 수 있습니다 자세한 설명을 위해

여기서 각각은 야간 모드를 켜고 끌 때 다른 자원 값 집합을 사용합니다. 나는 다른 글꼴 크기 사이를 이동하는 다소 그런 방법을 찾고있다. 어떤 도움을 주셔서 감사합니다.

답변

1

운영체제에 내장 된 것과 유사한 것이 있습니다. 설정> 접근성으로 이동하면 큰 텍스트 토글 또는 텍스트를 더 크게 만드는 슬라이더 (전화에 따라 다름)가 있습니다. 폰 크기에 sp을 사용하는 경우 앱에서 사용할 수 있습니다 (예 : android:textSize="16sp").

이것을 사용하려면 설정이 휴대 전화 설정에 있다는 것을 기억해야합니다. 앱에서 설정을 변경할 수있는 방법이 없다고 생각합니다. 그리고 그것은 당신뿐만 아니라 모든 앱에 적용되므로 시스템의 모든 것이 커질 것입니다. 그건 네가 필요로하는 것이 아닐 수도있다.

그렇지 않으면 앱에서 수동으로 시도 할 수 있습니다. 한 가지 방법은 서로 다른 글꼴 크기를 갖는 세 가지 테마를 만드는 것입니다. 그런 다음 어딘가에 저장 한 설정 (예 : SharedPreference)을 기반으로 Activity.onCreate()의 컨텍스트에 적절한 테마를 설정합니다.

하지만 나는 다른 리소스 하위 디렉토리에서 다른 글꼴 크기를 유지할 수 있다고 생각하지 않습니다. list of resource qualifiers은 미리 정의되어 있으며 거기에 글꼴 크기를 전환 할 항목이 있다고 생각하지 않습니다.

+0

sharedpref를 사용하면 매번 환경 설정을 확인할 수 있습니다. 어쨌든 다른 옵션이 없다면, 나는 그걸 할 것입니다. 감사. –

관련 문제