android - Read font size from Settings -


this question dublicate of android app: how read font size under settings? read answer of commonsware points use settings.system.font_scale. wrote few lines:

float scale = -66.6f; try {     scale = android.provider.settings.system.getfloat(getcontentresolver(),                                     android.provider.settings.system.font_scale); } catch(settingnotfoundexception e) {     log.e(getclass().getsimplename(), "error: ", e); } toast.maketext(this, "scale=" + scale, toast.length_long).show(); 

my problem settingnotfoundexception i'm using android 4.2.2 device. way code in oncreate callback of activity.

i googled problem , found 3 sites uses same code. special permission required? tried permission android.permission.write_settings without success.

i found in source code of settings.system function:

/** @hide */ public static void getconfigurationforuser(contentresolver cr,                                        configuration outconfig, int userhandle) {     outconfig.fontscale = settings.system.getfloatforuser(         cr, font_scale, outconfig.fontscale, userhandle);     if (outconfig.fontscale < 0) {         outconfig.fontscale = 1;     } } 

there font_scale in usage checked configuration class documentation points getresources().getconfiguration(). cound fix code using:

float scale = getresources().getconfiguration().fontscale; 

Comments

Popular posts from this blog

jquery - How can I dynamically add a browser tab? -

keyboard - C++ GetAsyncKeyState alternative -

android - java.net.UnknownHostException(Unable to resolve host “URL”: No address associated with hostname) -