0

我的 styles.xml 文件中有 AppTheme 样式。在清单文件中,我像应用程序主题一样选择它。我想登录活动独特的风格,我创建了登录风格,并将其设置在清单中。但它不起作用,LoginActivity 仍然需要 AppTheme。

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:name=".application.TrainerApp"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:theme="@style/AppTheme"
        android:supportsRtl="true">
        <activity
            android:name=".activities.login.LoginActivity"
            android:theme="@style/LoginTheme"
            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

在 style.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="LoginTheme" parent="@style/AppTheme">
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="lollipop">true</item>
        <item name="android:statusBarColor" tools:targetApi="lollipop">@android:color/transparent</item>
    </style>

在设计编辑器中更改主题有帮助!

4

2 回答 2

1

试试这样:-

  <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="LoginTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">#ff0</item>
        <item name="colorPrimaryDark">#0ff</item>
        <item name="colorAccent">#f0f</item>
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="lollipop">true</item>
        <item name="android:statusBarColor" tools:targetApi="lollipop">@android:color/transparent</item>
    </style>

代替 :-

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="LoginTheme" parent="@style/AppTheme">
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="lollipop">true</item>
        <item name="android:statusBarColor" tools:targetApi="lollipop">@android:color/transparent</item>
    </style>
于 2018-04-04T07:01:23.453 回答
0

从您的应用程序标签中删除android:theme="@style/AppTheme"并分别为每个活动应用主题。更多详情,请看我的链接:http ://androidkeeda.com/android-working-on-material-theme

于 2018-04-04T06:56:26.007 回答