0

현재 내 조각이 들어있는 슬라이딩 메뉴에 액세스하려면 DrawerLayout을 루트 레이아웃으로 사용하고 있습니다. 바이너리 XML 파일 라인 # 21 : 바이너리 XML 파일 라인 # 21 : 오류가 팽창 클래스 android.support.design플로팅 동작 버튼 클래스 inflating 오류 android.support.design.widget.FloatingActionButton DrawerLayout에서 사용하는 경우

android.view.InflateException - 나는 모든 조각에 걸쳐 FAB을 추가하지만 오류가 발생 할 .Widget.FloatingActionButton

FrameLayout 내에 포함하려고했지만 여전히 동일한 오류가 발생합니다. 또한 이미지에 응용 프로그램의 메모리보다 많은 픽셀이있을 때이 오류가 발생할 수 있음을 알고 있으므로 여러 이미지를 시도했습니다. 내 타겟 SDK는 23이고 관련된 appcompat 라이브러리를 컴파일했습니다.

일부 추가 정보;

주요 활동의 XML

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout 
    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" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    tools:context="com.example.liamk.version2.MainActivity" 
    android:id="@+id/drawerLayout"> 


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

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

      <android.support.design.widget.FloatingActionButton 
       android:id="@+id/fab" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="bottom|right" 
       android:layout_marginBottom="@dimen/activity_vertical_margin" 
       android:layout_marginRight="@dimen/activity_horizontal_margin" 
       android:src="@mipmap/ic_list_black_24dp"/> 
     </FrameLayout> 
    </LinearLayout> 

    <android.support.design.widget.NavigationView 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:id="@+id/nav_menu" 
     app:menu="@menu/navigation_menu" 
     android:layout_gravity="start" 
     app:headerLayout="@layout/navigationheader"> 

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

Gradle을

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     applicationId "com.example.liamk.version2" 
     minSdkVersion 19 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.4.0' 
    compile 'com.android.support:design:23.4.0' 
    compile 'com.android.support:support-v4:23.4.0' 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.google.android.gms:play-services-auth:10.0.1' 
    compile 'pub.devrel:easypermissions:0.2.1' 
    compile('com.google.api-client:google-api-client-android:1.22.0') { 
     exclude group: 'org.apache.httpcomponents' 
    } 
    compile('com.google.apis:google-api-services-calendar:v3-rev225-1.22.0') { 
     exclude group: 'org.apache.httpcomponents' 
    } 
} 

테마

<resources> 

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
    </style> 

    <style name="AppTheme.NoActionBar"> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> 

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" /> 

</resources> 

답변

0

은 내가 게시하는 것을 잊었다이에 수정을 발견했다.

부모 조정자 레이아웃에서 자식으로 탭 레이아웃을 사용하십시오. 소재 디자인은 당신의 친구입니다.