Android系统。我的自定义主题未应用

时间:2014-04-05 13:34:07

标签: android styles themes manifest

我在res / values / style.xml文件中有以下样式定义:

 <!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
    <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    <item name="android:textColor">#fff</item>
    <item name="android:textSize">12sp</item>
</style>

<style name="MainActivity" parent="AppTheme">
    <item name="android:textColor">#f0f</item>
    <item name="android:background">@color/black</item> 
</style>

并在清单文件中跟随代码:

 <application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:theme="@style/MainActivity"
        android:name="com.example.mygateway.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我希望textColor#f0f将应用于MainActivity活动,但事实并非如此。 textColor都没有应用我试过的其他项目。 实际上,唯一的AppTheme应用于活动和整个应用程序。 我是android开发的初学者。我做错了什么?

请帮忙。 谢谢!

1 个答案:

答案 0 :(得分:0)

作为official docs州:

如果您想继承自己定义的样式,则不必使用父属性。而只需将要继承的样式名称加到新名称的前面。样式,由句点分隔。例如,要创建一个继承上面定义的CodeFont样式的新样式,但将颜色设置为红色,您可以创建如下的新样式:“

<style name="AppTheme" parent="AppBaseTheme">   
    <item name="android:textColor">#fff</item>
    <item name="android:textSize">12sp</item>
</style>

<style name="AppTheme.MainActivity">
    <item name="android:textColor">#f0f</item>
    <item name="android:background">@color/black</item> 
</style>

<activity android:theme="@style/AppTheme.MainActivity" 
    ...>
       ...
</activity>`