2016-03-25 12 views
0

Ich verwende Koordinatorlayout innerhalb des Schubladenlayouts. Ich möchte eine Symbolleiste zum automatischen Ausblenden anzeigen und darin ein Filmplakat verwenden, das beim Scrollen von Filmdetails minimiert wird. Meine App verwendet auch ein Schubladenlayout. Hier ist mein Layout-XML activity_coordinator_layoutDie folgenden Klassen konnten nicht instanziiert werden android.support.design.widget.CoordinatorLayout

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/parent_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <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:background="@color/white" 
     android:orientation="vertical" 
     tools:context="com.inov8.falconpayconsumer.activities.MovieInfo"> 

     <RelativeLayout 
      android:id="@+id/headerLayout" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@color/red"> 

      <include 
       android:id="@+id/header_layout2" 
       layout="@layout/header" /> 
     </RelativeLayout> 

     <include 
      android:id="@+id/sub_header" 
      layout="@layout/subheader" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_below="@id/headerLayout" 
      android:visibility="visible" /> 

    </LinearLayout> 

    <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true" 
     tools:context="com.inov8.falconpayconsumer.activities.bookme.MovieDetailsActivity"> 

     <android.support.design.widget.AppBarLayout 
      android:layout_width="match_parent" 
      android:layout_height="250dp" 
      android:fitsSystemWindows="true" 
      android:theme="@style/AppTheme"> 

      <android.support.design.widget.CollapsingToolbarLayout 
       android:id="@+id/collapsing_toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:fitsSystemWindows="true" 
       app:contentScrim="?attr/colorPrimary" 
       app:expandedTitleMarginEnd="64dp" 
       app:expandedTitleMarginStart="48dp" 
       app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

       <ImageView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:fitsSystemWindows="true" 
        android:minHeight="100dp" 
        android:scaleType="matrix" 
        android:src="@drawable/gods_of_egypt" 
        app:layout_collapseMode="parallax" /> 

       <android.support.v7.widget.Toolbar 
        android:id="@+id/toolbar" 
        android:layout_width="match_parent" 
        android:layout_height="?attr/actionBarSize" 
        app:layout_collapseMode="pin"> 

       </android.support.v7.widget.Toolbar> 

      </android.support.design.widget.CollapsingToolbarLayout> 
     </android.support.design.widget.AppBarLayout> 

     <android.support.v4.widget.NestedScrollView 
      android:id="@+id/scroll" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:clipToPadding="false" 
      app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

      <FrameLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content"> 

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

        <TextView 
         android:id="@+id/title" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:textAppearance="@style/TextAppearance.AppCompat.Headline" /> 

        <TextView 
         android:id="@+id/description" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:layout_margin="15dp" 
         android:text="@string/lorem_ipsum" 
         android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> 

       </LinearLayout> 

      </FrameLayout> 

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

    </android.support.design.widget.CoordinatorLayout> 

    <include 
     android:id="@+id/header_layout" 
     layout="@layout/drawer_layout_list" /> 
</android.support.v4.widget.DrawerLayout> 

Wenn es das Problem in dem Standardthema der Anwendung ist, sie ist es <style name="My_App_Theme" parent="Theme.AppCompat.NoActionBar" /> In Manifest Ich verwende android:theme="@style/AppTheme"

und hier ist die kompletten Fehler angezeigt, wenn diese Zeichnung Layout

Rendering Problems The following classes could not be instantiated:  - android.support.design.widget.CoordinatorLayout (Open Class, Show Exception, Clear Cache)  
Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE Exception Details 
java.lang.IllegalArgumentException: You need to use a Theme.AppCompat theme (or descendant) with the design library.   at 
android.support.design.widget.ThemeUtils.checkAppCompatTheme(ThemeUtils.java:34)   at android.support.design.widget.CoordinatorLayout.<init>(CoordinatorLayout.java:182)   at 
android.support.design.widget.CoordinatorLayout.<init>(CoordinatorLayout.java:176)   at 
java.lang.reflect.Constructor.newInstance(Constructor.java:423)   at 
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)   at 
android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:835)   at 
android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:811)   at 
android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)   at 
android.view.LayoutInflater.inflate(LayoutInflater.java:515)   at 
android.view.LayoutInflater.inflate(LayoutInflater.java:394) 
+0

'Sie müssen ein Theme.AppCompat Theme (oder Nachkommen) mit der Design-Bibliothek verwenden. - Verwenden Sie' Theme.AppCompat' als übergeordnetes Ihres 'AppTheme'? –

+0

Ich benutze dies