粘性网格标题不适用于某些Android版本

Lea*_*ays 12 android gradle android-layout android-studio

我使用粘性网格标题与下面的应用程序Gradle依赖项.

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')

    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support:support-v4:25.3.1'
    compile 'com.tonicartos:stickygridheaders:1.0.1'
    testCompile 'junit:junit:4.12'

}
Run Code Online (Sandbox Code Playgroud)

并构建工具版本

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.example.stickyheader"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 8
        versionName '3'
        multiDexEnabled true
    }

 }
Run Code Online (Sandbox Code Playgroud)

Curruntly使用android studio 2.2.3.在我更新Android studio之前,它适用于所有设备,也适用于kitkat版本.在某些设备中特别是在kitkat下面崩溃,以及kitkat版本代码以上工作正常.

在kitkat设备的以下版本中,我收到了此错误, 堆栈跟踪

04-14 10:32:13.520 24869-24869/com.example.stickyheader E/AndroidRuntime:FATAL EXCEPTION:main java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.stickyheader/com.example.stickyheader.CustomerEventDetailActivity }:android.view.InflateException:二进制XML文件行#62:android.app.ActivityThread.handleLaunchActivity在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2067)上的类com.tonicartos.widget.stickygridheaders.StickyGridHeadersGridView错误膨胀(ActivityThread.java:2092)在Android.app.Handler.dispatchMessage(Handler)上的android.app.ActivityThread.access $ 600(ActivityThread.java:133)android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1203) .java:99)在android.app.Looper.loop(Looper.java:137)的android.app.ActivityThread.main(ActivityThread.java:4794)at java.lang.reflect.Method.invokeNative(Native Method)at at com.android.internal.os.ZygoteInit $ MethodAndArgsC中的java.lang.reflect.Method.invoke(Method.java:511)aller.run(ZygoteInit.java:789)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)at dalvik.system.NativeStart.main(Native Method)引起:android.view.InflateException:二进制XML文件行#62:在android.view.LayoutInflater.rInflate(LayoutInflater.java:746)的android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:698)中输入com.tonicartos.widget.stickygridheaders.StickyGridHeadersGridView类错误android.view.LayoutInflater.inflate(LayoutInflater.java:489)android.view.LayoutInflater.inflate(LayoutInflater.java:396)android.view.LayoutInflater.inflate(LayoutInflater.java:352)android.support.v7 android.support.v7.app.AppCompatActivity.setContentView中的.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:288)(AppCompatActivity.java:140)

另外这是我的粘性网格标题的Xml代码.

 <com.tonicartos.widget.stickygridheaders.StickyGridHeadersGridView
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/gridViewCustomer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerHorizontal="true"
        android:animateLayoutChanges="true"
        android:choiceMode="singleChoice"
        android:columnWidth="250dp"
        android:fastScrollEnabled="true"
        android:horizontalSpacing="1dp"
        android:numColumns="auto_fit"
        android:stretchMode="columnWidth"
        android:verticalSpacing="5dp"/>
Run Code Online (Sandbox Code Playgroud)

看起来它会给出错误,因为appCompact版本在build.gradle中依赖于defhere(我不确定).

能够处理此错误.

我也试着评论这种依赖性

 compile 'com.android.support:appcompat-v7:25.3.1'
Run Code Online (Sandbox Code Playgroud)

但没有工作.

谢谢 :)

ADM*_*ADM 3

这似乎是一个库问题。此外,您发布的堆栈跟踪没有任何有关崩溃原因的信息。
您正在使用的图书馆非常古老并且被遗弃。阅读ReadME.MD

因此,没有来自该库开发人员的支持,提出问题是没有用的。你应该尝试一些其他的解决方案。您可以尝试使用This或类似的RecyclerViewGridLayoutmanager