"Resource is not a resource" exception when inflating com.viewpagerindicator.TabPageIndicator

When testing my application on Android 4.4.2 and 4.1.1. I have an exception. An exception occurs when inflating Jack Wharton ViewPagerIndicator.

Logcat

05-12 05:46:46.990: E/AndroidRuntime(1415): Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class com.viewpagerindicator.TabPageIndicator
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater._createView(LayoutInflater.java:305)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater.onCreateView(LayoutInflater.java:509)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater.createViewFromTag(LayoutInflater.java:359)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater.rInflate(LayoutInflater.java:647)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater.inflate(LayoutInflater.java:465)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater.inflate(LayoutInflater.java:415)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.support.v4.app._HoloActivity.requestDecorView(_HoloActivity.java:381)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.support.v4.app._HoloActivity.setContentView(_HoloActivity.java:414)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at myproject.ActivityFavorites.onCreate(ActivityFavorites.java:94)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.app.Activity.performCreate(Activity.java:5231)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
05-12 05:46:46.990: E/AndroidRuntime(1415):     ... 11 more
05-12 05:46:46.990: E/AndroidRuntime(1415): Caused by: java.lang.reflect.InvocationTargetException
05-12 05:46:46.990: E/AndroidRuntime(1415):     at java.lang.reflect.Constructor.constructNative(Native Method)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at org.holoeverywhere.LayoutInflater._createView(LayoutInflater.java:281)
05-12 05:46:46.990: E/AndroidRuntime(1415):     ... 22 more
05-12 05:46:46.990: E/AndroidRuntime(1415): Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x2/d=0x7f01001c a=2}
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.content.res.Resources.loadDrawable(Resources.java:2068)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at android.content.res.TypedArray.getDrawable(TypedArray.java:602)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at com.viewpagerindicator.IcsLinearLayout.<init>(IcsLinearLayout.java:38)
05-12 05:46:46.990: E/AndroidRuntime(1415):     at com.viewpagerindicator.TabPageIndicator.<init>(TabPageIndicator.java:85)
05-12 05:46:46.990: E/AndroidRuntime(1415):     ... 25 more

As I understand it, the problem is that the resource with id 0x7f01001c. In-library ViewPagerIndicator, the gen folder is a R.java file. Inside this file is a piece of code:

GEN / com-viewpagerindicator / R.java

public static final class attr {
    public static int subtitle=0x7f01001c;
}

Inside bin / res / R.txt there is a line:

int attr subtitle 0x7f01001c

In my project, in the file gen / myproject / R.java:

public static final class attr {
    /**  Custom divider drawable to use for elements in the action bar. 
         <p>Must be a reference to another resource, in the form "<code>@[+][<i>package</i>:]<i>type</i>:<i>name</i></code>"
         or to a theme attribute in the form "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>".
    */
    public static final int actionBarDivider=0x7f01001c;
}

in my project in the file gen / com / viewpagerindicator / R.java:

public static final class attr {
    public static final int actionBarDivider = 0x7f01001c;
}

In my project, in the file gen / org.holoeverywhere / R.java

public static final class attr {
    public static final int actionBarDivider = 0x7f01001c;
}

There is a line in my project in bin / res / R.txt: int attr actionBarDivider 0x7f01001c By intuition, this seems better than subtitles.

, ? actionBarDivider. ? Android? ?

: 2.3.5, 2.3.6.

layout XML

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

     <com.viewpagerindicator.TabPageIndicator
        android:id="@+id/viewPagerIndicator"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

     <ViewPager
        android:id="@+id/viewPager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</LinearLayout>
+4

Source: https://habr.com/ru/post/1540411/


All Articles