簡體   English   中英

Android:如何使用動態TextView為不同的屏幕尺寸設置不同的文字大小?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM