1

ここからの回答に従いました: StackOverflow: How to change the font size of tabhost in android

それは機能しますが、Holo テーマを失い、代わりに古いデフォルト テーマを取得します。だから私は次のことを試しました:

<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo.NoActionBar.Fullscreen">
    <!-- API 14 theme customizations can go here. -->
    <item name="android:tabWidgetStyle">@style/CustomHoloTabWidget</item>
</style>
<style name="CustomHoloTabWidget" parent="@android:style/Widget.TabWidget">
    <!-- Custom item for text appearance -->
    <item name="android:textAppearance">@style/CustomTabWidgetText</item>
    <!-- End -->
    <item name="android:tabStripLeft">@null</item>
    <item name="android:tabStripRight">@null</item>
    <item name="android:tabStripEnabled">false</item>
    <item name="android:divider">?android:attr/dividerVertical</item>
    <item name="android:showDividers">middle</item>
    <item name="android:dividerPadding">8dip</item>
    <item name="android:measureWithLargestChild">true</item>
    <!-- Following line results in ERROR -->
    <item name="android:tabLayout">@android:layout/tab_indicator_holo</item>
    <!-- End --> 
</style>
<!-- Custom text appearance item definition -->
<style name="CustomTabWidgetText" parent="@android:style/TextAppearance.Widget.TabWidget">
    <item name="android:textSize">36sp</item>
    <item name="android:textStyle">bold</item>
</style>
<!-- End -->

基本的に、私が行ったのは、Widget.Holo.Tabwidget の元の定義を編集して、textAppearanceカスタム定義を含めることです。

次のエラーが表示されます。

エラー: エラー: 指定された名前に一致するリソースが見つかりません: attr 'android:tabLayout'.

Holo テーマを保持したまま、タブ タイトルのフォント サイズを変更したいだけです。

4

1 に答える 1

15

これを一度試してください

for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        TextView tv = (TextView) tabHost.getTabWidget().getChildAt(i).findViewById(android.R.id.title);
        tv.setTextSize(23);
    }
于 2012-12-13T13:42:56.470 に答える