2017-07-08 5 views

Antwort

0

Ich verwende diese Methode, um die Schriftgröße meiner Anwendung anzupassen, aber hier behalte ich sie stabil im Maßstab 1, den Sie entsprechend ändern können.

public void adjustFontScale(Configuration configuration) { 
    configuration.fontScale = (float) 1; 
    DisplayMetrics metrics = getResources().getDisplayMetrics(); 
    WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE); 
    wm.getDefaultDisplay().getMetrics(metrics); 
    metrics.scaledDensity = configuration.fontScale * metrics.density; 
    getBaseContext().getResources().updateConfiguration(configuration, metrics); 
} 

Ändern Sie einfach die configuration.fontScale auf einen beliebigen Wert und rufen Sie onCreate auf. Hoffe das hilft.

+0

'@Override geschützter void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); overridePendingTransition (R.anim.slide_in_from_bottom, R.anim.fade_out); adjustFontScale (neue Konfiguration()); setContentView (R.layout.activity_main);} 'Ich benutze dies aber nicht –

+0

nach dem Einstellen des Inhalts. adjustFontScale (getResources(). getConfiguration()); –

+0

ich ändere dieses @Override geschützt void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); overridePendingTransition (R.anim.slide_in_from_bottom, R.anim.fade_out); setContentView (R.layout.activity_main); adjustFontScale (getResources(). GetConfiguration());} aber noch nicht arbeiten –

Verwandte Themen