[英]Android: How to have different text sizes for different screen sizes with dynamic TextViews?
我在我的應用程序上有一個TableLayout,我通過從本地SQLite DB獲取數據以編程方式添加行。 由於我還以編程方式在每行上創建TextView,因此我需要為它們指定一個文本大小,並且該大小不適合所有屏幕大小。 例如,如果我選擇一款在智能手機上看起來不錯的產品,它在大型平板電腦上看起來會太小。
如果我在XML上有TextViews,我可以簡單地為每個屏幕大小創建一個不同的布局,但是如何在文本大小中實現以編程方式創建TextViews的靈活性?
非常感謝提前。
我最終用下面的方法解決了這個問題。 不是最優雅,但工作得很好:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels/dm.xdpi,2);
double y = Math.pow(dm.heightPixels/dm.ydpi,2);
double screenInches = Math.sqrt(x+y);
int textsize = 0;
if(screenInches<5)
textsize = 16;
else if(screenInches<7.5)
textsize = 22;
else
textsize = 24;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.