0

随着屏幕变宽,我正在尝试放大按钮中的文本大小。起初,我的代码似乎有效,但在不同的 android 设备上它不起作用。它会在小屏幕上将字体更改为大尺寸。

这就是我正在做的事情:

 int w=getWindowManager().getDefaultDisplay().getWidth();

        Button but1=new Button(this);
//        but1.setTextColor( Color.parseColor("#ffd79825")); 
        if (w<400)
            but1.setTextSize(10.0f);
        else
        if (w<650)
            but1.setTextSize(14.0f);
        else
             if (w>470)
                but1.setTextSize(18.0f);
4

1 回答 1

2

你为什么要让它比现在更复杂?

只需在您的值文件夹中使用尺寸:

价值观:

<dimen name="txtSize">10dp</dimen>

价值观-sw400:

<dimen name="txtSize">14dp</dimen>

等等。

您可以像这样获取值:

Resources res = getResources();
float fontSize = res.getDimension(R.dimen.txtSize);
于 2013-05-22T01:46:06.977 回答