当我创建一个新的android项目时,默认的主题是android:Theme.Light,我发现TextView控件的字体大小很小, 它是否意味着android中的textAppearance的默认值:theme =“@ style / AppTheme”是textAppearanceSmall?谢谢!
<style name="AppBaseTheme" parent="android:Theme.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
答案 0 :(得分:8)
您可以在默认的styles.xml文件中找到用于所有Android小部件的样式。您可以在此处查看此文件:https://github.com/android/platform_frameworks_base/blob/master/core/res/res/values/styles.xml
或者直接进入您的SDK文件夹,例如在我的计算机上,它可以在这里找到:D:\Dev\android-sdk\platforms\android-17\data\res\values\styles.xml
您将在此文件中找到TextView
的样式定义:
<style name="Widget.TextView">
<item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
<item name="android:textSelectHandleLeft">?android:attr/textSelectHandleLeft</item>
<item name="android:textSelectHandleRight">?android:attr/textSelectHandleRight</item>
<item name="android:textSelectHandle">?android:attr/textSelectHandle</item>
<item name="android:textEditPasteWindowLayout">?android:attr/textEditPasteWindowLayout</item>
<item name="android:textEditNoPasteWindowLayout">?android:attr/textEditNoPasteWindowLayout</item>
<item name="android:textEditSidePasteWindowLayout">?android:attr/textEditSidePasteWindowLayout</item>
<item name="android:textEditSideNoPasteWindowLayout">?android:attr/textEditSideNoPasteWindowLayout</item>
<item name="android:textEditSuggestionItemLayout">?android:attr/textEditSuggestionItemLayout</item>
<item name="android:textCursorDrawable">?android:attr/textCursorDrawable</item>
</style>
您可以看到,在此文件中,默认情况下,文本大小定义为textAppearanceSmall
。
答案 1 :(得分:5)
TextView
未采用默认textAppearance
,默认设置为明确使用textAppearanceSmall
。
Themes.xml
包含以下行,用于定义TextView
的默认样式:
<item name="textViewStyle">@android:style/Widget.TextView</item>
引用的样式包含以下行:
<item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
这就是TextView
默认为小文字大小的原因。