2017-05-23 13 views
1

異なる色合いのためにandroid attrs.xmlファイルに属性を追加しました。 styles.xmlファイルでは、これらの属性の色を指定しているため、スタイルごとに異なります。java.lang.UnsupportedOperationException:インデックス13の属性を解決できませんでした:TypedValue {t = 0x2/d = 0x7f010046 a = -1}

Attrs.xml:

<attr name="lightBackground" format="color" /> 
<attr name="normalBackground" format="color" /> 

のstyles.xml:

<style name="AppThemeNight" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">@color/colorPrimaryNight</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDarkNight</item> 
    <item name="colorAccent">@color/colorAccentNight</item> 

    <item name="drawerArrowStyle">@style/DrawerIcon</item> 
    <item name="lightBackground">@color/colorPrimaryLightNight</item> 
    <item name="normalBackground">@color/colorPrimaryNight</item> 
</style> 

は、カスタムスピナーレイアウトを膨らま:spinner_layout_adapter.xml:しかし

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/spinnerLayoutAdapter_tv_spinnerText" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:padding="15dp" 
     android:text="TextView" 
     android:textColor="@android:color/white" 
     android:background="?attr/normalBackground" 
     android:textSize="16sp"/> 

05-23 14:22:34.833 17231-17231/nl.gemeente.breda.bredaapp E/AndroidRuntime: FATAL EXCEPTION: main 
    Process: nl.gemeente.breda.bredaapp, PID: 17231 
    android.view.InflateException: Binary XML file line #3: Binary XML file line #3: Error inflating class android.widget.TextView 
    Caused by: android.view.InflateException: Binary XML file line #3: Error inflating class android.widget.TextView 
    Caused by: java.lang.reflect.InvocationTargetException 
     at java.lang.reflect.Constructor.newInstance0(Native Method) 
     at java.lang.reflect.Constructor.newInstance(Constructor.java:430) 
     at android.view.LayoutInflater.createView(LayoutInflater.java:645) 
     at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:717) 
     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:785) 
     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727) 
     at android.view.LayoutInflater.inflate(LayoutInflater.java:495) 
     at android.view.LayoutInflater.inflate(LayoutInflater.java:426) 
     at nl.gemeente.breda.bredaapp.adapter.ServiceAdapter.getView(ServiceAdapter.java:32) 
     at android.widget.AbsSpinner.onMeasure(AbsSpinner.java:194) 
     at android.widget.Spinner.onMeasure(Spinner.java:592) 
     at android.support.v7.widget.AppCompatSpinner.onMeasure(AppCompatSpinner.java:416) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 
     at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1117) 
     at android.widget.LinearLayout.onMeasure(LinearLayout.java:642) 
     at android.view.View.measure(View.java:19861) 
     at android.support.constraint.ConstraintLayout.internalMeasureChildren(ConstraintLayout.java:934) 
     at android.support.constraint.ConstraintLayout.onMeasure(ConstraintLayout.java:973) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:714) 
     at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:786) 
     at android.view.View.measure(View.java:19861) 
     at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1081) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 
     at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 
     at android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 
     at android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 
     at android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 
     at android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083) 
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 
05-23 14:22:34.833 17231-17231/nl.gemeente.breda.bredaapp E/AndroidRuntime:  at com.android.internal.policy.DecorView.onMeasure(DecorView.java:691) 
     at android.view.View.measure(View.java:19861) 
     at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2275) 
     at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1366) 
     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1619) 
     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254) 
     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6344) 
     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874) 
     at android.view.Choreographer.doCallbacks(Choreographer.java:686) 
     at android.view.Choreographer.doFrame(Choreographer.java:621) 
     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860) 
     at android.os.Handler.handleCallback(Handler.java:751) 
     at android.os.Handler.dispatchMessage(Handler.java:95) 
     at android.os.Looper.loop(Looper.java:154) 
     at android.app.ActivityThread.main(ActivityThread.java:6178) 
     at java.lang.reflect.Method.invoke(Native Method) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:891) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:781) 
    Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 13: TypedValue{t=0x2/d=0x7f010046 a=-1} 
     at android.content.res.TypedArray.getDrawable(TypedArray.java:925) 
     at android.view.View.<init>(View.java:4202) 
     at android.widget.TextView.<init>(TextView.java:710) 
     at android.widget.TextView.<init>(TextView.java:704) 
     at android.widget.TextView.<init>(TextView.java:700) 
      ... 71 more 

属性を以下のような通常の色で変更すると機能します。属性?attr/normalBackgroundは機能していないようです。

android:background="@color/colorPrimary" 

誰かが私が間違っていた考えを持っていますか?

+0

実行しているAndroidのバージョンはどれですか? Android O(ベータ版)と似たようなものがありましたが、まれにしか発生しませんでした。 – matty

+0

私はSDK25で同様の問題があります。 –

+0

問題は再現不可能です。 – azizbekian

答えて

1

「AppThemeNight」を使用する場所はどこですか?あなたのコードで小さなプロジェクトをセットアップし、 "AppThemeNight"がマニフェストで使用され、すべてが期待どおりに機能することを定義しました。私はマニフェストで「AppThemeNight」への参照を削除するとアプリが次のエラーでアウトエラーが発生した:

Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 13: TypedValue{t=0x2/d=0x7f0200c9 a=-1}

私はあなたが見ていることを考えるものであるので、私はあなたのことを指定しているとは思わないいますテーマを使用する必要があります。もしあなたがいたら、それを投稿してください。私たちはもう一度問題を解決しようとします。参考のため、ここに私のテストマニフェストがあります:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.attributes"> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:roundIcon="@mipmap/ic_launcher_round" 
     android:supportsRtl="true" 
     android:theme="@style/AppThemeNight"> 
     <activity android:name=".MainActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
関連する問題