Eclipse を使用して Android アプリを作成し、最新の API を使用してコンパイルしています。
複数の TextView コントロールの TextSize を設定しています。一部のコントロールは XML で定義され、一部の TextView コントロールはコードで動的に作成されました。アプリケーションで TextView コントロールを見ると、テキストのサイズが異なります。同じ寸法を使用してテキストサイズを設定しているため、なぜ異なる結果になるのかわかりません。
私が定義した次元は次のとおりです。
<!-- Default Font Size -->
<dimen name="font_size">12sp</dimen>
ここでは、XML で textview コントロールの 1 つを設定しています。
<TextView
android:id="@+id/lblSection1Title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/device_info_title"
android:textColor="@color/FontColor"
android:textSize="@dimen/font_size" />
そして、コードでテキストサイズを設定している場所は次のとおりです。
m_fTextSize = getResources().getDimension( R.dimen.font_size );
txtLabel = new TextView(this.m_xContext);
xLayoutParams = new TableRow.LayoutParams( 0, LayoutParams.WRAP_CONTENT, 0.35f );
xLayoutParams.setMargins((int)m_fMarginLeft, (int)m_fMarginTop, (int)m_fMarginRight, (int)m_fMarginBottom);
txtLabel.setLayoutParams(xLayoutParams);
txtLabel.setTextColor(this.m_iTextColor);
txtLabel.setTextSize(this.m_fTextSize);
スクリーン ショットを見ると、動的に作成された TextView コントロールが、XML で定義された画面上の残りの TextView よりも小さいことがわかります。
スクリーン ショットへのリンクは次のとおりです 。
getDimension を呼び出すと、画面密度に基づいてテキスト サイズが調整されることはわかっていますが、XML で TextSize を設定しても同じことはできないでしょうか?
よろしくお願いします。