我正在編寫一個Android應用程序。我基本上創建了以下dimen
資源:爲什麼維度資源不一致以及如何獲得正確的值?
<dimen name="button_text_size">11pt</dimen>
我用它在我的兩個XML和Java代碼來創建一個Button
和TextView
其文本大小是11磅。這是我如何做:
XML
<Button
android:layout_width="match_parent"
android:layout_height="0dp"
android:textSize="@dimen/button_text_size"
android:text="secret!"
android:layout_margin="@dimen/button_margin"
android:background="secret!"
android:layout_weight="1"
android:onClick="secret!"/>
Java代碼
TextView text = new TextView (this);
text.setLayoutParams (new LinearLayout.LayoutParams (0, ViewGroup.LayoutParams.WRAP_CONTENT, 3));
text.setText (secret);
text.setTextSize (getResources().getDimension (R.dimen.button_text_size));
理論上,這兩種觀點的文字應該是相同的大小。但文本視圖的文字大小似乎更大!我不知道爲什麼會發生這種情況。我想這是因爲單位出現了一些問題,但實際發生了什麼?如何獲得正確的值?
只是還有一個問題,如果我使用sp,我能在我的問題中使用該方法嗎?我的意思是setTextSize(float)重載。 – Sweeper
是的,你可以使用setTextSize方法,或者你想問什麼? – Pavan
謝謝你的回答! – Sweeper