如何根据屏幕大小设置文本视图中文本的大小,并根据屏幕的高度和宽度动态缩放,而不必根据android中的分辨率创建不同的文件夹。
提前致谢
答案 0 :(得分:1)
此问题可帮助您获取屏幕尺寸(以像素为单位)。
https://stackoverflow.com/a/1016941/6286125
您可以根据自己的意愿进行一些基本的数学调整。
编辑: 由于我已经使用过DisplayMetrics,我会像这样使用它:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int myTextSize = metrics.widthPixels / 10;
textView.setTextSize(myTextSize);
然后您可以根据需要使用显示器的宽度或高度进行调整。
如果您未在活动中执行此操作,则需要先启动活动才能使用" getWindowManager()"。
我建议检查宽度或高度哪个更大,以便知道你是在肖像还是在风景中,并使你的数学适应这个参数:
int myWidth = metrics.widthPixels;
int myHeight = metrics.heightPixels;
if(myWidth > myHeight) { //Landscape
myTextSize = myWidth / 10;
} else { //Portrait
myTextSize = myHeight / 10;
}
答案 1 :(得分:0)
我建议您使用sp作为文本大小来支持多个屏幕。