VipulKumar
VipulKumar

Reputation: 2395

Error inflating class android.support.v7.widget.Toolbar

I am trying to use toolbar (android.support.v7.widget.Toolbar) with navigation drawer. But it shows exception "Error inflating class android.support.v7.widget.Toolbar". Code is working fine if I don't use android.support.v7.widget.Toolbar in xml. My activity is extending android.support.v7.app.ActionBarActivity. Here is my main_activity.xml

    <!--
         As the main content view, the view below consumes the entire
         space available using match_parent in both dimensions.

    -->

    <FrameLayout
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >


        <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <!-- We use a Toolbar so that our drawer can be displayed
             in front of the action bar -->
        <android.support.v7.widget.Toolbar  
            android:id="@+id/my_awesome_toolbar"
            android:layout_height="wrap_content"
            android:layout_width="match_parent"
            android:minHeight="?attr/actionBarSize"
            android:background="?attr/colorPrimary" />


    </LinearLayout>

        </FrameLayout>

    <!--
         android:layout_gravity="start" tells DrawerLayout to treat
         this as a sliding drawer on the left side for left-to-right
         languages and on the right side for right-to-left languages.
         If you're not building against API 17 or higher, use
         android:layout_gravity="left" instead.
    -->
    <!--
         The drawer is given a fixed width in dp and extends the full height of
         the container.
    -->

    <fragment
        android:id="@+id/navigation_drawer"
        class="com.jooleh.android.merchant.NavigationDrawerFragment"
        android:layout_width="300dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        tools:layout="@layout/fragment_navigation_drawer" />

</android.support.v4.widget.DrawerLayout>

Styles.xml

 <style name="AppBaseTheme" parent="Theme.AppCompat">
        <item name="colorPrimary">@color/red_primary_500</item>
        <item name="colorPrimaryDark">@color/red_primary_700</item>
        <item name="colorAccent">@color/green_secondary</item>
        <item name="windowActionBar">false</item>

    </style>

Styles-v11

<style name="AppBaseTheme" parent="Theme.AppCompat">
        <!-- API 11 theme customizations can go here. -->
        <item name="windowActionBar">false</item>
    </style>

Styles-v14

<style name="AppBaseTheme" parent="Theme.AppCompat">
        <!-- API 14 theme customizations can go here. -->
        <item name="windowActionBar">false</item>
    </style>

I am testing on jellybean, minSdkVersion="16" and targetSdkVersion="21".

Upvotes: 2

Views: 3025

Answers (2)

Android Component
Android Component

Reputation: 39

It might be late, but helpful for someone. I struggled a lot for same problem and then I changed from

android.support.v7.widget.Toolbar

to

android.widget.Toolbar

and it worked, I dont know the reason. If anyone has any insight pls share

Upvotes: 1

mike.b93
mike.b93

Reputation: 1999

I was able to solve this problem by replacing the following:

In your Toolbar layout, replace:

android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"

with

android:minHeight="@dimen/abc_action_bar_default_height_material"
android:background="@color/myColor"

Upvotes: 3

Related Questions