2017-07-28 76 views
1

我有2個問題。第一個問題是文本在模擬器上顯示爲白色(android 6.0),而在我的手機上顯示爲灰色(android 7.0)。我試圖改變textColorPrimary,但只要我改變了我的應用程序不會再啓動了。Android應用程序在更改android時崩潰:textColorPrimary

這是styles.xml時崩潰:

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:windowActionBarOverlay">false</item> 
    <item name="android:textColorPrimary">#000000</item> 
</style> 

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

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

</resources> 

activity_navigation.xml:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout 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:id="@+id/drawer_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
tools:openDrawer="start"> 

<include 
    layout="@layout/app_bar_navigation" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

<android.support.design.widget.NavigationView 
    android:id="@+id/nav_view" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_gravity="start" 
    android:fitsSystemWindows="true" 
    app:headerLayout="@layout/nav_header_navigation" 
    app:menu="@menu/activity_navigation_drawer" /> 

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

NavigationActivity.Java:

app_bar_navigation.xml:

<?xml version="1.0" encoding="utf-8"?> 
<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" 
tools:context="nl.prlg.morpoc.NavigationActivity"> 

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/AppTheme.PopupOverlay" /> 

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

<!--<include layout="@layout/content_navigation" />--> 
<FrameLayout 
    android:id="@+id/navContent" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_marginTop="?attr/actionBarSize" /> 

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

我得到這個錯誤: android.view.InflateException: Binary XML file line #16

完整堆棧跟蹤:

07-28 13:41:09.164 27026-27026/nl.prlg.morpoc E/AndroidRuntime: FATAL EXCEPTION: main 
                  Process: nl.prlg.morpoc, PID: 27026 
                  java.lang.RuntimeException: Unable to start activity ComponentInfo{nl.prlg.morpoc/nl.prlg.morpoc.NavigationActivity}: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) 
                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                   at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                   at android.os.Handler.dispatchMessage(Handler.java:102) 
                   at android.os.Looper.loop(Looper.java:148) 
                   at android.app.ActivityThread.main(ActivityThread.java:5417) 
                   at java.lang.reflect.Method.invoke(Native Method) 
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
                  Caused by: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
                   at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292) 
                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
                   at nl.prlg.morpoc.NavigationActivity.onCreate(NavigationActivity.java:35) 
                   at android.app.Activity.performCreate(Activity.java:6237) 
                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                   at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                   at android.os.Handler.dispatchMessage(Handler.java:102)  
                   at android.os.Looper.loop(Looper.java:148)  
                   at android.app.ActivityThread.main(ActivityThread.java:5417)  
                   at java.lang.reflect.Method.invoke(Native Method)  
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                  Caused by: android.view.InflateException: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
                   at android.view.LayoutInflater.createView(LayoutInflater.java:645) 
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764) 
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
                   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                   at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                   at nl.prlg.morpoc.NavigationActivity.onCreate(NavigationActivity.java:35)  
                   at android.app.Activity.performCreate(Activity.java:6237)  
                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                   at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                   at android.os.Handler.dispatchMessage(Handler.java:102)  
                   at android.os.Looper.loop(Looper.java:148)  
                   at android.app.ActivityThread.main(ActivityThread.java:5417)  
                   at java.lang.reflect.Method.invoke(Native Method)  
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                  Caused by: java.lang.reflect.InvocationTargetException 
                   at java.lang.reflect.Constructor.newInstance(Native Method) 
                   at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764)  
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)  
                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)  
                   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:515)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                   at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                   at nl.prlg.morpoc.NavigationActivity.onCreate(NavigationActivity.java:35)  
                   at android.app.Activity.performCreate(Activity.java:6237)  
                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                   at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                   at android.os.Handler.dispatchMessage(Handler.java:102)  
                   at android.os.Looper.loop(Looper.java:148)  
                   at android.app.ActivityThread.main(ActivityThread.java:5417)  
                   at java.lang.reflect.Method.invoke(Native Method)  
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                  Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0 
                   at android.content.res.Resources.getValue(Resources.java:1351) 
                   at android.content.res.Resources.getColorStateList(Resources.java:1045) 
                   at android.content.Context.getColorStateList(Context.java:475) 
                   at android.support.v7.content.res.AppCompatResources.getColorStateList(AppCompatResources.java:65) 
                   at android.support.design.widget.NavigationView.createDefaultColorStateList(NavigationView.java:422) 
                   at android.support.design.widget.NavigationView.<init>(NavigationView.java:148) 
                   at android.support.design.widget.NavigationView.<init>(NavigationView.java:100) 
                   at java.lang.reflect.Constructor.newInstance(Native Method)  
                   at android.view.LayoutInflater.createView(LayoutInflater.java:619)  
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764)  
                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)  
                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)  
                   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:515)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                   at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                   at nl.prlg.morpoc.NavigationActivity.onCreate(NavigationActivity.java:35)  
                   at android.app.Activity.performCreate(Activity.java:6237)  
                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                   at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                   at android.os.Handler.dispatchMessage(Handler.java:102)  
                   at android.os.Looper.loop(Looper.java:148)  
                   at android.app.ActivityThread.main(ActivityThread.java:5417)  
                   at java.lang.reflect.Method.invoke(Native Method)  
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  

因此,任何人知道如何解決白色彩色文本?

編輯: 白字的屏幕截圖: enter image description here

+0

發佈您的XML代碼 – nitinkumarp

+0

您還可以發佈活動/片段的XML嗎? –

+0

讓我們開始將我們指向第17行的xml文件 –

回答

0

我想你使用的可能是這種錯誤的原因顏色的不透明性。我以前得到同樣的錯誤,並通過改變顏色的不透明度來解決。請嘗試設置opacity = 255或默認值解決問題...