2017-09-07 57 views
0

我试图编辑标题文本大小,因为它在横向屏幕中更改。我发现改变SP中的维度可以解决问题。所以,我没有这个...如何自定义Android活动的标题文本

style.xml

<style name="Toolbar.TitleText" 
    parent="TextAppearance.Widget.AppCompat.Toolbar.Title"> 
    <item name="android:textSize">30sp</item> 
</style> 

添加一个样式,然后在android.support.v7.widget.Toolbar下app_bar_main.xml我加入这行

app:titleTextAppearance="@style/Toolbar.TitleText" 

现在它在主要活动上给出了期望的结果,但所有其他活动都是相同的。我的应用程序中有大约10项活动。我如何更改所有活动的标题?请帮忙。提前致谢。

的manifest.xml

<?xml version="1.0" encoding="utf-8"?> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/title_main" 
     android:theme="@style/AppTheme.NoActionBar" /> 
    <activity 
     android:name=".splash" 
     android:screenOrientation="portrait" 
     android:theme="@style/SplashTheme"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".ch_1" 
     android:label="@string/ch_1" /> 
    <activity 
     android:name=".ch_2" 
     android:label="@string/ch_2" /> 
    <activity 
     android:name=".ch_3" 
     android:label="@string/ch_3" /> 
    <activity 
     android:name=".ch_4" 
     android:label="@string/ch_4" /> 
    <activity 
     android:name=".ch_5" 
     android:label="@string/ch_5" /> 
    <activity 
     android:name=".ch_6" 
     android:label="@string/ch_6" /> 
    <activity 
     android:name=".ch_7" 
     android:label="@string/ch_7" /> 
    <activity 
     android:name=".ch_8" 
     android:label="@string/ch_8" /> 
    <activity 
     android:name=".ch_9" 
     android:label="@string/ch_9" /> 
    <activity 
     android:name=".ch_10" 
     android:label="@string/ch_10" /> 
    <activity 
     android:name=".ch_11" 
     android:label="@string/ch_11" /> 
    <activity android:name=".ch_12" 
     android:label="@string/ch_12" /> 
    <activity 
     android:name=".ch_13" 
     android:label="@string/ch_13" /> 
    <activity 
     android:name=".ch_14" 
     android:label="@string/ch_14" /> 
    <activity 
     android:name=".ch_15" 
     android:label="@string/ch_15" /> 
    <activity android:name=".view" /> 
</application> 

style.xml

<resources> 

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:windowBackground">@color/white</item> 
    <item name="colorButtonNormal">@color/colorPrimary</item> 
    <item name="android:textAppearanceButton">@style/TextAppearance.AppCompat.Button.Custom</item> 
</style> 


<style name="Toolbar.TitleText" 
    parent="TextAppearance.Widget.AppCompat.Toolbar.Title"> 
    <item name="android:textSize">24sp</item> 
</style> 


<style name="TextAppearance.AppCompat.Button.Custom"> 
    <item name="android:textColor">@color/white</item> 
    <item name="android:textSize">28sp</item> 
</style> 


<style name="AppTheme.NoActionBar"> 
    <item name="windowActionBar">false</item> 
    <item name="windowNoTitle">true</item> 
</style> 

<style name="ActionButtonStyle" parent="@android:style/Widget.Holo.ActionButton"> 
    <item name="android:minWidth">0dip</item> 
    <item name="android:paddingLeft">0dip</item> 
    <item name="android:paddingRight">0dip</item> 
</style> 


<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> 

<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" /> 

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar"> 
    <item name="android:windowBackground">@drawable/splash</item> 
</style> 

+0

请添加您的清单和您的style.xml文件请 –

+0

嗨@PierGiorgioMisley感谢您的回复。我在主要问题中添加了manifest.xml和style.xml。请在那里检查。 – Hussain

+0

好的,还要添加mainactivity(正常工作的)的XML代码和另一个不按预期工作的活动。 (你可以避免无用的东西,只需添加包含或与工具栏交互的相关部分:) –

回答

0

好的,我已经解决了这个问题。之前的代码不适用于其他布局,因为activity_main.xml使用工具栏而不是操作栏,所以我必须为操作栏编写另一个样式。 我添加了这些风格..

<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar.Solid"> 
    <item name="titleTextStyle">@style/MyTitleTextStyle</item> 
</style> 

<style name="MyTitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"> 
    <item name="android:textSize">24sp</item> 
</style> 

,然后在AppTheme添加的项目这样的..

<item name="actionBarStyle">@style/MyActionBar</item> 

,现在工作的罚款。感谢大家的回复。

0

您可以使用<include>标签来实现它。 就这样

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    tools:context="com.dzq.aprivate.view.activity.MainActivity"> 

    <include layout="@layout/lay_actionbar"/> 

    <FrameLayout 
     android:id="@+id/lay_container" 
     android:layout_weight="1" 
     android:layout_width="match_parent" 
     android:layout_height="0dp"/> 

    <include layout="@layout/lay_main_bottom"/> 
</LinearLayout> 

使用<include layout="@layout/toolbar_header"/>在每一个活动你想要的。

相关问题