1. ホーム
  2. java

[解決済み] Android Studioのレンダリング問題 - スタイルの欠落?

2022-02-12 05:57:51

質問

で以下のエラーが発生します。 Preview のウィンドウに Android Studio :

レンダリングの問題 スタイルの欠落。正しいテーマが選択されているか このレイアウトは? レイアウトの上にあるテーマコンボボックスで、他のレイアウトを選んでください。 別のレイアウトに変更するか、テーマのスタイル参照を修正する。 以下が見つかりません。 '?attr/actionBarPopupTheme' を現在のテーマで使用しています。(同様のエラーが4つあります。 表示)

カスタムスタイル/テーマを作成しました。これは、次のようなものです。 styles.xml :

<resources xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">

    <style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light">
        <item name="android:actionBarStyle"   tools:ignore="NewApi">@style/MyActionBar</item>
        <item name="actionBarStyle">@style/MyActionBar</item>
        <item name="actionBarTheme">@style/MyActionBarTheme</item>
    </style>

    <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="android:background"  tools:ignore="NewApi">@color/white</item>
        <item name="titleTextStyle">@style/MyActionBar.ActionBar.TitleTextStyle</item>
        <item name="background">@color/bg_common</item>
    </style>

    <style name="MyActionBarTheme" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="actionMenuTextColor">@color/title</item>
        <item name="colorControlNormal">@color/title</item>
    </style>

    <style name="MyActionBar.ActionBar.TitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
        <item name="android:textColor">@color/title</item>
    </style>
</resources>

私のレイアウトファイルのヘッダーは次のようなものです。

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    style="@style/CustomActionBarTheme"
    android:id="@+id/drawer_layout"
    android:background="@color/bg_common_2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

...

そして、マニフェスト・ファイルには、アプリケーション・タグを追加しました。

android:theme="@style/CustomActionBarTheme" 

なぜエラーが発生するのでしょうか?また CustomActionBarTheme をテーマとしてプレビューウィンドウに表示します。何か見落としているのでしょうか?何かアドバイスがありましたら、よろしくお願いします。

解決方法は?

Android Studioは、レイアウトファイルのプレビューにインストールされた最新のSDKを使用しています。このため、スタイルの欠落によるプレビューエラーが発生することがあります。古いAPIレベル(例:23から22)に切り替えると、これを修正できます。