如何更改Android应用程序中每个对话框的标题字体大小?

时间:2014-03-05 06:18:11

标签: android android-styles

我正在寻找一种解决方案来更改应用程序中每个Dialog标题的字体大小。我想只更改styles.xml而不更改创建对话框的代码。

这就是我试图做的事情:

<style name="CustomDialogTheme" parent="@android:style/Theme.Dialog">
        <item name="android:windowTitleStyle">@style/MyOwnDialogTitle</item>
        <item name="android:textSize">40sp</item>
</style>

<style name="MyOwnDialogTitle">
        <item name="android:textSize">70sp</item>
</style>

<style name="MyTheme">
        <item name="android:alertDialogStyle">@style/CustomDialogTheme</item>

</style>

谢谢:)

3 个答案:

答案 0 :(得分:0)

您应该使用textSize参数在style.xml中定义自己的样式,并在您的窗口小部件中使用此样式。请看:http://developer.android.com/guide/topics/ui/themes.html

答案 1 :(得分:0)

只需创建values, values-ldpi, values-mdpi, values-hdpi, values-xhdpi之类的值文件夹即可。然后,您可以根据高度或宽度创建值文件夹,并且属于ldpi或mdpi,即values-w360dp-mdpivalues-h600dp-mdpi。然后在这些值文件夹中创建styles.xml。并根据您的要求在每个styles.xml中设置不同的字体大小。然后android会自动选择布局,具体取决于屏幕大小和值,依赖于高度或宽度的样式。

答案 2 :(得分:0)

你忘记了一个属性。我也是这样做的:

<style name="CustomDialog" parent="@android:style/Theme.Holo.Light.Dialog">
    <item name="android:windowTitleStyle">@style/CustomWindowTitle</item>
</style>

<style name="CustomWindowTitle">
    <item name="android:textAppearance">@style/CustomWindowTitleTextStyle</item>
</style>

<style name="CustomWindowTitleTextStyle">
    <item name="android:textSize">22sp</item>
</style>