Android 向项目添加gridlayout支持库时出现问题?

Android 向项目添加gridlayout支持库时出现问题?,android,android-gridlayout,Android,Android Gridlayout,当我单击使用gridlayout支持库的小部件时,会出现以下错误: 10-12 17:15:14.373: E/dalvikvm(3957): Could not find class 'com.example.awesomefilebuilderwidget.Drag_and_Drop_App$MyDragListener', referenced from method com.example.awesomefilebuilderwidget.Drag_and_Drop_App.onCrea

当我单击使用gridlayout支持库的小部件时,会出现以下错误:

10-12 17:15:14.373: E/dalvikvm(3957): Could not find class 'com.example.awesomefilebuilderwidget.Drag_and_Drop_App$MyDragListener', referenced from method com.example.awesomefilebuilderwidget.Drag_and_Drop_App.onCreate
10-12 17:15:14.433: E/AndroidRuntime(3957): FATAL EXCEPTION: main
10-12 17:15:14.433: E/AndroidRuntime(3957): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.awesomefilebuilderwidget/com.example.awesomefilebuilderwidget.Drag_and_Drop_App}: android.view.InflateException: Binary XML file line #2: Error inflating class android.support.v7.widget.GridLayout
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1833)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1854)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread.access$1500(ActivityThread.java:135)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1041)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.os.Looper.loop(Looper.java:150)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread.main(ActivityThread.java:4333)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at java.lang.reflect.Method.invokeNative(Native Method)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at java.lang.reflect.Method.invoke(Method.java:507)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at dalvik.system.NativeStart.main(Native Method)
10-12 17:15:14.433: E/AndroidRuntime(3957): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class android.support.v7.widget.GridLayout
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.createView(LayoutInflater.java:518)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.inflate(LayoutInflater.java:386)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:231)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.Activity.setContentView(Activity.java:1712)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at com.example.awesomefilebuilderwidget.Drag_and_Drop_App.onCreate(Drag_and_Drop_App.java:22)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1797)
10-12 17:15:14.433: E/AndroidRuntime(3957):     ... 11 more
10-12 17:15:14.433: E/AndroidRuntime(3957): Caused by: java.lang.reflect.InvocationTargetException
10-12 17:15:14.433: E/AndroidRuntime(3957):     at java.lang.reflect.Constructor.constructNative(Native Method)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at java.lang.reflect.Constructor.newInstance(Constructor.java:415)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.view.LayoutInflater.createView(LayoutInflater.java:505)
10-12 17:15:14.433: E/AndroidRuntime(3957):     ... 20 more
10-12 17:15:14.433: E/AndroidRuntime(3957): Caused by: java.lang.NoClassDefFoundError: android.support.v7.gridlayout.R$dimen
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.support.v7.widget.GridLayout.<init>(GridLayout.java:255)
10-12 17:15:14.433: E/AndroidRuntime(3957):     at android.support.v7.widget.GridLayout.<init>(GridLayout.java:274)
10-12 17:15:14.433: E/AndroidRuntime(3957):     ... 23 more
10-12 17:15:14.373:E/dalvikvm(3957):找不到类'com.example.awesomefilebuilderwidget.Drag_and_Drop_App$MyDragListener',引用自方法com.example.awesomefilebuilderwidget.Drag_and_Drop_App.onCreate
10-12 17:15:14.433:E/AndroidRuntime(3957):致命异常:main
10-12 17:15:14.433:E/AndroidRuntime(3957):java.lang.RuntimeException:无法启动活动组件信息{com.example.awesomefilebuilderwidget/com.example.awesomefilebuilderwidget.Drag_and_Drop_App}:android.view.InflateException:二进制XML文件行#2:膨胀类android.support.v7.widget.GridLayout时出错
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1833)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1854)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread.access$1500(ActivityThread.java:135)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1041)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.os.Handler.dispatchMessage(Handler.java:99)上
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.os.Looper.loop(Looper.java:150)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread.main(ActivityThread.java:4333)
10-12 17:15:14.433:E/AndroidRuntime(3957):位于java.lang.reflect.Method.Invokenactive(本机方法)
10-12 17:15:14.433:E/AndroidRuntime(3957):在java.lang.reflect.Method.invoke(Method.java:507)
10-12 17:15:14.433:E/AndroidRuntime(3957):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
10-12 17:15:14.433:E/AndroidRuntime(3957):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
10-12 17:15:14.433:E/AndroidRuntime(3957):在dalvik.system.NativeStart.main(本机方法)
10-12 17:15:14.433:E/AndroidRuntime(3957):由以下原因引起:android.view.InflateException:二进制XML文件行#2:膨胀类android.support.v7.widget.GridLayout时出错
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.createView(LayoutInflater.java:518)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.inflate(LayoutInflater.java:386)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.inflate(LayoutInflater.java:276)
10-12 17:15:14.433:E/AndroidRuntime(3957):在com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:231)上
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.Activity.setContentView(Activity.java:1712)上
10-12 17:15:14.433:E/AndroidRuntime(3957):在com.example.awesomefilebuilderwidget.Drag_and_Drop_App.onCreate(Drag_and_Drop_App.java:22)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1797)
10-12 17:15:14.433:E/AndroidRuntime(3957):。。。还有11个
10-12 17:15:14.433:E/AndroidRuntime(3957):由以下原因引起:java.lang.reflect.InvocationTargetException
10-12 17:15:14.433:E/AndroidRuntime(3957):位于java.lang.reflect.Constructor.constructNative(本机方法)
10-12 17:15:14.433:E/AndroidRuntime(3957):位于java.lang.reflect.Constructor.newInstance(Constructor.java:415)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.view.LayoutInflater.createView(LayoutInflater.java:505)
10-12 17:15:14.433:E/AndroidRuntime(3957):。。。20多
10-12 17:15:14.433:E/AndroidRuntime(3957):原因:java.lang.NoClassDefFoundError:android.support.v7.gridlayout.R$dimen
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.support.v7.widget.GridLayout.(GridLayout.java:255)
10-12 17:15:14.433:E/AndroidRuntime(3957):在android.support.v7.widget.GridLayout.(GridLayout.java:274)
10-12 17:15:14.433:E/AndroidRuntime(3957):。。。23多
我按照官方的android开发者指南将支持库添加到我的项目中,但我仍然会遇到错误

因为我相信这或多或少是我的错,所以我采取了以下步骤来补充:

1) 转到文件->导入->现有Android代码到工作区->找到v7 gridlayout文件并单击完成

2) 转到SupportGridLayout包和libs文件夹,右键单击.jar文件,并将其添加到我的构建路径(我对bin文件做了同样的操作)

3) 单击我自己的项目->属性->库窗格->添加JAR(如下所示)

然后,我还有订单和导出选项卡,如下所示:

然后,这两个库显示在我的项目“引用库”部分。


但不管我做什么,我还是会犯同样的错误。我这样做是否正确?

您的步骤不正确。与此相反:

3) 单击我自己的项目->属性->库窗格->添加JAR(如图所示) (见下图)

执行此操作(从说明中的部分):

  • 在项目资源管理器中,右键单击项目并选择“属性”
  • 在库窗格中,单击添加
  • 选择库项目并单击“确定”。例如,appcompat项目应列为android-support-v7-appcompat
  • 在“属性”窗口中,单击“确定”
  • 当然,除了使用gridlayout而不是appcompat之外

    另外,您所做的其余步骤(使用Build和Export选项卡)也应该对gridlay执行