私が使うとき
Android:textSizes="20dp"
textView
のXMLで、「"sp"
の代わりに "dp"
はテキストサイズです。」
なぜ「dp」を使用すべきではないのですか?正しいアプローチは何ですか?異なるディスプレイで同じテキストサイズを実現するにはどうすればよいですか?
SPフォントはユーザー設定を尊重するため、常に使用する必要があります。 ここに例があります 例を使って理解しましょう-
SPおよびDPを含むテキスト
デバイステキスト設定を変更します(設定->ディスプレイ->フォントサイズ)
アプリを再度開き、テキストを確認します。SPを使用していたテキストは、DPとは高さが異なります。
Spとdpを使用できます。 Android設定でご存知のとおり、テキストサイズを変更できます([設定]-> [デバイス]-> [表示]-> [フォントサイズ])。設定でフォントサイズを変更すると、sp内のすべてのtextViewが変更されます。 -変わらない
両方使用できます
spフォントサイズ
dpそれ以外はすべて。
dp
密度非依存ピクセル-画面の物理密度に基づく抽象的な単位。これらの単位は160 dpi画面に関連しているため、1 dpは160 dpi画面上の1ピクセルです。 dpとピクセルの比率は画面密度によって変化しますが、必ずしも正比例しているわけではありません。注:コンパイラーは「dip」と「dp」の両方を受け入れますが、「dp」は「sp」とより一貫しています。
sp
スケールに依存しないピクセル-これはdpユニットに似ていますが、ユーザーのフォントサイズ設定によってもスケールされます。フォントサイズを指定するときは、この単位を使用することをお勧めします。これにより、フォントサイズが画面密度とユーザーの好みの両方に対して調整されます。
詳細は Androidのpx、dp、dip、spの違い? を参照してください。
@GiruBhaiが共有したように、テキストサイズにはdpの代わりにspを使用する方が便利です。これは、dpとは異なり、ユーザーの好みに応じて変更できるためです。
より詳しい情報。 : Androidの寸法
ソース:developer.Android.com