setTextSize() の単位は SPが使われているらしい。
例:
setTextSize (20);
sp(scaled pixel):解像度に応じて伸縮する
dp (dip:Density-independent Pixels ):端末のdpiによってサイズが切り替わる。
160 dpi の画面で 1 dp = 1 px
レイアウトにはdpを使ってテキストはspで記述すると同じ表示になるそうです。
sp,dp から px の変更
20sp x 1.5(scaledDensity) = 30px //未確認
scaledDensityの調べ方
// ディスプレイ情報の取得
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
Log.d("test", "density=" + metrics.density);
Log.d("test", "densityDpi=" + metrics.densityDpi);
Log.d("test", "scaledDensity=" + metrics.scaledDensity);
Log.d("test", "widthPixels=" + metrics.widthPixels);
Log.d("test", "heightPixels=" + metrics.heightPixels);
Log.d("test", "xDpi=" + metrics.xdpi);
Log.d("test", "yDpi=" + metrics.ydpi);
0 件のコメント:
コメントを投稿