android.view.InflateException: Binary XML file line #19: Error inflating class com.sztech.videoplayer.VideoPlayerActivity.view.MyGrid
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581)
at android.view.KeyEvent.dispatch(KeyEvent.java:1289)
at android.app.Activity.dispatchKeyEvent(Activity.java:2078)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1663)
at android.view.ViewRoot.deliverKeyEventToViewHierarchy(ViewRoot.java:2562)
at android.view.ViewRoot.handleFinishedEvent(ViewRoot.java:2537)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.sztech.videoplayer.VideoPlayerActivity.view.MyGrid in loader dalvik.system.PathClassLoader[/data/app/com.sztech.videoplayer-2.apk]
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at android.view.LayoutInflater.createView(LayoutInflater.java:471)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)

解决方案 »

  1.   

    com.sztech.videoplayer.VideoPlayerActivity.view.MyGrid 这个类不存在!
      

  2.   

    xml里的配置
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:myapp="http://schemas.android.com/apk/res/com.szectech.videoplayer.view"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
        <com.szectech.videoplayer.VideoPlayerActivity.view.MyGrid
            android:id="@+id/grid"
            android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
           android:columnWidth="85dp"
            android:verticalSpacing="5dp"
            android:horizontalSpacing="1dp"
            android:numColumns="8" 
            android:background="@android:color/darker_gray"
            
            />
     
    </RelativeLayout>
      

  3.   

    com.szectech.videoplayer.VideoPlayerActivity.view.MyGrid有没有com.szectech.videoplayer.VideoPlayerActivity.view这个包
    有的话,在这个包下有没有MyGrid.java这个文件?
      

  4.   

    那个MyGrid就是我的内部类,我不知道怎么配置,这样配是网上看的,估计不对吧,xml它找不到。怎么配置才能让xml找到我的内部类呢?
      

  5.   

    你如果xml代码直接从网上拷贝的,而本地却又没有com.szectech.videoplayer.VideoPlayerActivity.view.MyGrid这个类,肯定就出错了。
      

  6.   

    com.szectech.videoplayer这个包有,VideoPlayerActivity这个是包下我的activity,MyGrid是那个内部类。
      

  7.   

    xml不是网上拷的,我只根据他的说法加了.view.MyGrid
      

  8.   

    你把MyGrid弄成外部类,也就是要有MyGrid.java这个文件。
      

  9.   

    xml文件是无法引用内部类的吗?
      

  10.   

    那个MyGrid本来就是写的外部类,可以的,方法什么的都对。现在要用一个activity里的数据,把它改成内部类了,我现在就是不知道在xml里面怎么去用一个内部类。
      

  11.   

    错误就是xml找不到那个内部类,我该怎么配置一下,让它找到?
      

  12.   

    com.szectech.videoplayer.VideoPlayerActivity.view$MyGrid
    内部类的引用方法
      

  13.   

    配置成 
    <com.szectech.videoplayer.VideoPlayerActivity.view$MyGrid
             android:id="@+id/grid"
            android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
           android:columnWidth="85dp"
            android:verticalSpacing="5dp"
            android:horizontalSpacing="1dp"
            android:numColumns="8" 
            android:background="@android:color/darker_gray"
            
            /> 
    会提示
    Element type "com.szectech.videoplayer.VideoPlayerActivity.view" must be followed by either attribute specifications, ">" or  "/>".
    但在MyGrid后面加上/>,依旧提示。
      

  14.   

    由于需要是静态的类,而你又说你的这个类要用到Activity的数据,被调用的也需要是静态的对象,如果这个对象是定义在Activity里面,那你放弃吧,因为Activity是不能定义为Static的。
      

  15.   

    http://blog.csdn.net/soliuyong/article/details/6773059,这里有正解