2016-03-04 129 views
-1

在手机的设置中,我可以全局更改应用的字体大小。android设置:调整字体大小

设置>显示>字体大小

我可以做的字体大小(小,中,大,非常大),也看过Java和(如果适用)。只为我的应用程序设置? 我试图改变字体大小如下。

Button buttonbig = (Button) dialog.findViewById(R.id.btn_big); 
    buttonbig.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      float fScale = getResources().getConfiguration().fontScale; 
      String fontSize = String.valueOf(fScale); 


      conf.fontScale =fScale + 0.15f; 
      getResources().getConfiguration().setTo(conf); 

      TextView textView = (TextView) dialog.findViewById(R.id.lbl_size_act); 
      textView.setText(fontSize); 


     } 
    }); 
    dialog.show(); 

我的文本视图显示新的大小。然而,文本仍然是相同的大小。让任何人知道什么是错的?

+0

[从设置阅读字体大小]的可能的复制如何(http://stackoverflow.com/questions/ 16544931 /读字体大小从 - 设置) –

回答

0

首先,我强烈建议不要重写语言,字体大小或其他设置,因为正如您所指出的,这是您应该在全球范围内执行的操作。

如果你想为你的整个应用程序设置它,正确的位置应该在Application

public class App extends Application { 

    @Override 
    public void onCreate() { 
     super.onCreate(); 

     Configuration configuration = getResources().getConfiguration(); 
     configuration.fontScale *= 2; 
     getResources().updateConfiguration(configuration, getResources().getDisplayMetrics()); 
    } 
} 

如果你想在运行时改变它,你也会设置它在应用程序中,但你必须完成并重新启动您的活动才能生效。