android.support.design.widget.NavigationView 클래스 확장 오류
Support Design Library에서 새 구성 요소 NavigationView 의 자습서를 따랐는데이 오류 메시지가 표시되지 않습니다.
Error inflating class android.support.design.widget.NavigationView
여기에서 모든 해결 방법을 시도했습니다.
Android 디자인 지원 라이브러리 요소 사용시 오류
그러나 오류 메시지는 여전히 존재합니다.
xml
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<include layout="@layout/toolbar" android:id="@+id/mainToolBar" />
<fragment android:name="com.ais.cherry.fragment.LoginFragment"
android:id="@+id/loginFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/mainToolBar" />
<fragment android:name="com.ais.cherry.fragment.WaterFallFragment"
android:id="@+id/mainFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/mainToolBar" />
<fragment android:name="com.ais.cherry.fragment.SearchFragment"
android:id="@+id/searchFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/mainToolBar" />
<fragment android:name="com.ais.cherry.fragment.ChatMainFragment"
android:id="@+id/chatMainFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/mainToolBar" />
<fragment android:name="com.ais.cherry.fragment.ProfileFragment"
android:id="@+id/profileFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/mainToolBar" />
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@android:color/white"
app:itemTextColor="#212121"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer" />
</android.support.v4.widget.DrawerLayout>
build.gradle
buildscript {
repositories {
mavenCentral()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.ais.cherry"
minSdkVersion 16
targetSdkVersion 22
multiDexEnabled true
renderscriptTargetApi 22
renderscriptSupportModeEnabled true
}
dependencies {
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:support-v4:22.2.0'
compile 'com.android.support:design:22.2.0'
compile 'com.android.support:recyclerview-v7:22.2.0'
}
프로젝트 build.gradle
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
styles.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- Base application theme. -->
<style name="AppTheme" parent="AppTheme.Base">
</style>
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowActionBarOverlay">true</item>
<item name="android:windowActionModeOverlay">true</item>
<item name="android:actionModeStyle">@style/AppTheme.ActionModeStyle</item>
<item name="android:windowActionBar">false</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowNoTitle">true</item>
<!-- Support library compatibility -->
<item name="windowActionBarOverlay">true</item>
<!-- ActionBar color -->
<item name="colorPrimary">#E91E63</item>
<!-- Status bar color -->
<item name="colorPrimaryDark">#C2185B</item>
<!-- Window color -->
<item name="android:windowBackground">@color/white</item>
<!-- ActionBar title text -->
<item name="android:titleTextStyle">@style/AppTheme.MyActionBarTitleText</item>
<item name="colorAccent">#9E9E9E</item>
<item name="drawerArrowStyle">@style/AppTheme.MyDrawerArrowStyle</item>
<!-- color for actionMenu-->
<item name="actionMenuTextColor">#FFFFFF</item>
<item name="android:actionMenuTextColor">#FFFFFF</item>
<!-- android:textColorSecondary is the color of the menu
overflow icon (three vertical dots) -->
<item name="android:textColorPrimary">#212121</item>
<item name="android:textColorSecondary">#FFFFFF</item>
<!--Navigation bar color-->
<item name="android:navigationBarColor">#E91E63</item>
<!--Status bar color-->
<item name="android:statusBarColor">#C2185B</item>
</style>
어떤 도움을 주시면 감사하겠습니다!
편집-@ menu / drawer 및 @ menu / drawer_header 및 stacktrace 추가
drawer.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_first_fragment"
android:icon="@drawable/home_view"
android:checked="true"
android:title="@string/main"/>
<item
android:id="@+id/nav_second_fragment"
android:icon="@drawable/comment_view"
android:title="@string/chat"/>
<item
android:id="@+id/nav_third_fragment"
android:icon="@drawable/user_view"
android:title="@string/profile"/>
<item android:title="@string/search">
<menu>
<item
android:title="@string/clothes"/>
<item
android:title="@string/pants"/>
</menu>
</item>
</group>
</menu>
drawer_header.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="192dp"
android:background="?attr/colorPrimaryDark"
android:padding="16dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
android:gravity="bottom">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/title"
android:textColor="@android:color/white"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>
StackTrace (그 중 일부만)
아래와 같이 세 가지 예외를 던졌습니다. 모두 layout.xml의 "setContentView (layout)"줄에 문제가 발생했다고 지적합니다.
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ais.cherry/com.ais.cherry.activity.FirstActivity}: android.view.InflateException: Binary XML file line #32: Error inflating class android.support.design.widget.NavigationView
Caused by: android.view.InflateException: Binary XML file line #32: Error inflating class android.support.design.widget.NavigationView
Caused by: java.lang.reflect.InvocationTargetException
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0
실제로 primarycolortext
는 종속성을 업그레이드하거나 다운 그레이드하는 문제가 아닙니다.이 문제는 appcompat
라이브러리와 디자인 지원 라이브러리 의 버전이 일치하지 않을 때 발생할 수 있습니다 .
조건 일치의 예
compile 'com.android.support:appcompat-v7:23.1.1' // appcompat library
compile 'com.android.support:design:23.1.1' //design support library
비슷한 오류가 발생했습니다. 내가 사용할 때
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
<item name="colorAccent">#00BCD4</item>
<item name="android:textColorPrimary">#212121</item>
<item name="android:textColorSecondary">#727272</item>
</style>
android : textColorPrimary 및 android : textColorSecondary 테마 항목을 제거하면 나를 위해 작동합니다.
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
<item name="colorAccent">#00BCD4</item>
</style>
시작하려면 매우 간단한 앱 테마로 작업 해보세요.
편집하다:
이 튜토리얼 이 도움 이 될 것입니다. 내 이해는 "android : textColorPrimary"를 사용하려면 최소 API 레벨 21이 필요합니다. "android :"없이 동일한 태그를 사용하면 디자인 지원 라이브러리가 사용됩니다. 모든 지원 라이브러리 위젯은 "android : textColorPrimary"대신 "textColorPrimary"항목을 찾으려고 시도하며 동일한 항목을 찾지 못하면 위에서 언급 한 오류가 발생합니다.
나는 또한 같은 오류가 있었다. 제 경우에는 일부 리소스가 drawable-v21에만있었습니다. 해당 리소스도 드로어 블 폴더에 복사하십시오. 이것은 나를 위해 문제를 해결했습니다.
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0
이것이 주요 문제입니다.
동일한 오류가 발생하여 app:itemTextColor="@color/a_color"
내비게이션보기 에 추가 하여 해결했습니다 .
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="left"
app:headerLayout="@layout/layout_drawer_header"
app:menu="@menu/drawer_menu"
app:itemTextColor="@color/primary"/>
이 방법으로 android:textColorPrimary
및 android:textColorSecondary
테마를 계속 사용할 수 있습니다 .
그래서 저는이 오류를 수정하려고했습니다. 그리고 아무도 나를 위해 일하지 않았습니다. 해결책을 찾지 못했습니다. 대본:
Navigation Drawer Project
Android Studio 2.1.2 내부 를 만들려고했는데 에서 기본 Android 아이콘을 변경하려고 할 때 nav_header_main.xml
이상한 오류가 발생했습니다. 내 PNG
로고를 ...\app\src\main\res\drawable-21
. 내 PNG 로고를 ...\app\src\main\res\drawable
bam 에 넣으려고 할 때 ! 모든 이상한 오류가 사라집니다.
다음은 PNG를 drawable-21
폴더 에 넣을 때 스택 추적 중 일부입니다 .
08-17 17:29:56.237 6644-6678/myAppName E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.Restarter.getActivities
08-17 17:30:01.674 6644-6644/myAppName E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{myAppName.MainActivity}: android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2372)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956)
at android.app.ActivityThread.access$700(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5433)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
at android.view.LayoutInflater.createView(LayoutInflater.java:613)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.java:22)
at android.app.Activity.performCreate(Activity.java:5179)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1146)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956)
at android.app.ActivityThread.access$700(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5433)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:587)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.java:22)
at android.app.Activity.performCreate(Activity.java:5179)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1146)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956)
at android.app.ActivityThread.access$700(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5433)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #14: Error inflating class ImageView
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.java:189)
at android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.java:262)
at android.support.design.widget.NavigationView.<init>(NavigationView.java:173)
at android.support.design.widget.NavigationView.<init>(NavigationView.java:95)
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:587)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.java:22)
at android.app.Activity.performCreate(Activity.java:5179)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1146)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956)
at android.app.ActivityThread.access$700(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5433)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.content.res.ResourcesEx.getThemeDrawable(ResourcesEx.java:459)
at android.content.res.ResourcesEx.loadDrawable(ResourcesEx.java:435)
at android.content.res.TypedArray.getDrawable(TypedArray.java:609)
at android.widget.ImageView.<init>(ImageView.java:120)
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:57)
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:53)
at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:106)
at android.support.v7.app.AppCompatDelegateImplV7.createView(AppCompatDelegateImplV7.java:980)
at android.support.v7.app.AppCompatDelegateImplV7.onCreateView(AppCompatDelegateImplV7.java:1039)
at android.support.v4.view.LayoutInflaterCompatHC$FactoryWrapperHC.onCreateView(LayoutInflaterCompatHC.java:44)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:
위의 스택 추적에는 다음이 포함됩니다.
android.support.design.widget.NavigationView.inflateHeaderView (NavigationView.java:262) at android.support.design.widget.NavigationView. (NavigationView.java:173) at android.support.design.widget.NavigationView. (NavigationView. java : 95)
나는 gradle에서 다운 그레이드를 해결했습니다.
compile 'com.android.support:design:23.1.0'
에
compile 'com.android.support:design:23.0.1'
Android Studio의 구성 요소를 업데이트하면 항상 문제가 발생하는 것 같습니다. 지겨워.
이미로 마이그레이션 한 경우 androidx
레이아웃 xml을 다음에서 변경해야합니다.
<android.support.design.widget.NavigationView ... />
에
<com.google.android.material.navigation.NavigationView ... />
위의 수정 중 어느 것도 나를 위해 일하지 않았습니다.
나를 위해 일한 것은 바뀌고 있었다
<item name="android:textColorSecondary">#FFFFFF</item>
에
<item name="android:textColorSecondary">@color/colorWhite</item>
당신은 분명히 당신의 colors.xml에 colorWhite를 추가해야합니다
아래 단계를 따르면 확실히이 오류가 제거됩니다.
- 오류를 일으키는 위젯을 찾으십시오.
- 해당 위젯이 선언 된 레이아웃 파일로 이동합니다.
- 해당 파일에 사용 된 모든 리소스 (드로어 블 등)를 확인합니다.
- 그런 다음 모든 버전의 드로어 블 (drawable-v21, drawable 등)에 리소스가 있는지 확인합니다.
건배!!
Parag Naik이 올바르게 언급했듯이 (Lạng Hoàng이 확장 됨) textColorPrimary를 색상 상태 목록이 아닌 다른 것으로 설정할 때 문제가 발생합니다. 따라서 textColorPrimary를 상태 목록으로 설정할 수 있습니다. android 버그 추적기에 colorPrimary가 하나의 색상 만있는 상태 목록이라는 문제가 있습니다. https://code.google.com/p/android/issues/detail?id=172353
따라서 styles.xml의 테마에 대해 :
<style name="Base.Theme.Hopster" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/accent</item>
<item name="android:textColorPrimary">@color/primary_color_statelist</item>
</style>
그리고 실제 primary_color_statelist.xml 파일 :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- This is used when the Navigation Item is checked -->
<item android:color="@color/primary_text_selected" android:state_checked="true" />
<!-- This is the default text color -->
<item android:color="@color/primary_text" />
</selector>
저에게는이 오류가 여러 번 발생했습니다.
android.support.design.widget.NavigationView # 28 및 # 29 클래스 팽창 오류
저에게 적합한 솔루션은 지원 디자인 라이브러리와 지원 appcompat 라이브러리를 일치시켜야한다는 것입니다.
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
나를 위해 그들은 일치해야합니다. :) 그것은 나를 위해 작동합니다!
제 경우에는 kitkat API 19 버전 장치에서 앱을 실행할 때 동일한 오류가 발생했습니다. 나는 문제를 알아 냈다. drawable-v21 디렉토리에있는 드로어 블 리소스가있었습니다 (API 21 Lollipop의 버전에 사용됨). API 21 이하 버전에서 작업하기 위해 "Drawable"폴더에 동일한 리소스를 넣었습니다. 작동합니다. 해당 디렉토리에 저장할 수 있습니다.
이 문제에 대해 여전히 누구를 위해. 나는 같은 문제에 직면했지만 여기에있는 모든 해결책이 저에게 효과적이지 않습니다.
logcat의 큐를 사용하여 NavigationView 클래스를 살펴보십시오.이 코드 줄에서 문제가 발생한다는 것을 알았습니다.
itemTextColor = this.createDefaultColorStateList(16842806);
따라서 Aenur56이 언급했듯이 itemTextColor와 관련이있는 것 같습니다. 그래서 Aenur56의 솔루션으로 시도했지만 작동하지 않습니다.
위의 코드 줄을 살펴보면 ColorStateList가 있음을 알 수 있습니다. 그래서 하나를 만든 다음 itemTextColor에 대해 설정하면 작동합니다.
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="#00FF00" android:state_checked="true" />
<item android:color="#000000" />
</selector>
도움이 되었기를 바랍니다.
위의 솔루션 중 어느 것도 도움이되지 않았습니다. 나는 이것을 다른 웹 페이지에서 찾았고 그것은 나를 위해 일했습니다- "디자인 라이브러리의 project.properties에서 목표를 21 이상으로 설정 한 다음 디자인 lib, appcomapt 및 프로젝트를 정리하고 즐기십시오"
도움이 되길 바랍니다!
지원 라이브러리를 업그레이드 한 후에도 동일한 문제가 발생했으며 어떤 답변도 저에게 효과가 없었습니다. 마지막으로 최신 버전의 빌드 도구를 다운로드하고 build.gradle에서 다음으로 업그레이드하는 문제를 해결했습니다.buildToolsVersion "23.0.1"
더 나은 업그레이드 com.android.support:appcompat-v7:23.1.0
로 @Ton 말했다 다운 그레이드compile 'com.android.support:design:23.1.0'
하지만 업그레이드하지 않는 이유 com.android.support:appcompat-v7:23.1.1
최종 업그레이드는 나를 위해 일했습니다.
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
그렇다면 왜 오래된 라이브러리를 사용해야합니까? 지금은 업그레이드 된 디자인과 컴팩트 함을 모두 사용하는 것이 좋다고 생각합니다.
나는 또한이 같은 문제를 겪고 있었고 거의 3 시간 동안 문제가 내 drawable_menu.xml 파일에 있음을 알았고 잘못 작성되었습니다.
이 오류는 다음과 같은 이유로 인해 발생할 수 있습니다.
이 문제는 appcompat 라이브러리와 디자인 지원 라이브러리의 버전이 일치하지 않을 때 발생할 수 있습니다. 조건 일치의 예
compile 'com.android.support:appcompat-v7:24.2.0' // appcompat library compile 'com.android.support:design:24.2.0' //design support library
스타일의 테마 파일에이 두 가지만있는 경우
<item name="colorPrimary">#4A0958</item> <item name="colorPrimaryDark">#4A0958</item>
그런 다음 ColorAccent도 추가하십시오. 다소 이렇게 보일 것입니다.
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#4A0958</item>
<item name="colorPrimaryDark">#4A0958</item>
<item name="colorAccent">#4A0958</item>
</style>
메뉴에 대한 드로어 블이 올바른 폴더에 있는지 확인하십시오. 그곳에 drawablev21을 넣었으므로 리소스에 대한 null 포인터가 발생했습니다.
내 아이콘을 드로어 블 폴더로 이동하는 문제를 수정했습니다.
이상하지만 깨끗한 프로젝트와 프로젝트 재 구축이 저에게 효과적이었습니다.
다시 한 번 확인해야 할 점은 AndroidManifest.xml 파일에 테마를 올바르게 적용한 것입니다. 제 경우에는 android : theme 속성을 생략했습니다 . 예 :
<application ... android:theme="@style/Your.Theme.Here" ... >
다음과 같은 문제를 해결하는 일반적인 방법 Error inflating class X
:
- 원인 스택 추적을 확인하고 다음
Resources$NotFoundException
과 같아야합니다.
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0066 at android.content.res.ResourcesImpl.getValue(ResourcesImpl.java:190) at android.content.res.Resources.loadXmlResourceParser(Resources.java:2094) at android.content.res.Resources.getLayout(Resources.java:1111) at android.view.LayoutInflater.inflate(LayoutInflater.java:424)
Resource ID
실제로 생성 된 R.java 파일의 정확한 정수입니다.0x7f0b0066
부 풀릴 수없는 xml 파일을 가리키는 것을 찾으십시오 .- 대부분의 경우 이는 디렉토리
layout
에이 리소스가 없기 때문layout-XXX
입니다. - 해결책은 필요한 모든 디렉토리에 리소스를 배치하는 것입니다. 또는 최소한
layout
.
해결책을 찾았습니다 ... app : srcCompat을 android : src로 변경했다면이 솔루션이 저에게 효과적이었습니다. :)
'IT박스' 카테고리의 다른 글
Curl POST 요청 헤더를 표시 하시겠습니까? (0) | 2020.09.23 |
---|---|
CSS가있는 이미지 그레이 스케일 및 마우스 오버시 색상 변경? (0) | 2020.09.23 |
: 리소스 URL 컨텍스트에 사용 된 안전하지 않은 값 (0) | 2020.09.23 |
EditText 소프트웨어 키보드에서 "다음"버튼을 비활성화하는 방법 ( "완료"버튼으로 대체) (0) | 2020.09.23 |
? : ?? (0) | 2020.09.23 |