对旧api android.support.v7.widget.Gridlayout的Gridview v7支持无法实例化
我一直在尝试使用v7支持库在我的android项目中使用网格布局。我看到很多人都有和我一样的问题,但他们所有的解决方案都不适合我。我已经更新了java。我已经更新了最新的支持库。我已经将支持包添加到构建路径中。我尝试将gridview拖到视图上,并允许eclipse导入包。这些工作中没有任何一项。我继续得到android.support.v7.widget.GridLayout未能实例化。我甚至创建了一个测试项目,从支持网格布局和相同的错误开始。有人有其他想法吗?以下是我寻求帮助的地方: 在许多其他方面中 以下是我的活动_main.xml:对旧api android.support.v7.widget.Gridlayout的Gridview v7支持无法实例化,android,android-support-library,Android,Android Support Library,我一直在尝试使用v7支持库在我的android项目中使用网格布局。我看到很多人都有和我一样的问题,但他们所有的解决方案都不适合我。我已经更新了java。我已经更新了最新的支持库。我已经将支持包添加到构建路径中。我尝试将gridview拖到视图上,并允许eclipse导入包。这些工作中没有任何一项。我继续得到android.support.v7.widget.GridLayout未能实例化。我甚至创建了一个测试项目,从支持网格布局和相同的错误开始。有人有其他想法吗?以下是我寻求帮助的地方: 在许多
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
app:alignmentMode="alignBounds"
app:columnCount="6"
app:columnOrderPreserved="false"
app:useDefaultMargins="true" >
<EditText
android:id="@+id/total"
app:layout_column="0"
app:layout_columnSpan="6"
app:layout_gravity="left"
app:layout_row="0"
android:clickable="false"
android:ems="10"
android:inputType="none|number"
android:textAlignment="textEnd"
android:width="500dp" >
<requestFocus />
</EditText>
<Button
android:id="@+id/Button8"
app:layout_column="1"
app:layout_row="1"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="8" />
<Button
android:id="@+id/Button9"
app:layout_column="2"
app:layout_row="1"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="9" />
<Button
android:id="@+id/Button4"
app:layout_column="0"
app:layout_row="2"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="4" />
<Button
android:id="@+id/Button5"
app:layout_column="1"
app:layout_row="2"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="5" />
<Button
android:id="@+id/Button6"
app:layout_column="2"
app:layout_row="2"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="6" />
<Button
android:id="@+id/ButtonMultiply"
app:layout_column="3"
app:layout_row="2"
android:background="@drawable/custom_button"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="Multiply"
android:text="*"
android:textColor="@color/light_grey" />
<Button
android:id="@+id/Button1"
app:layout_column="0"
app:layout_row="3"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="1" />
<Button
android:id="@+id/Button2"
app:layout_column="1"
app:layout_row="3"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="2" />
<Button
android:id="@+id/Button3"
app:layout_column="2"
app:layout_row="3"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="3" />
<Button
android:id="@+id/ButtonMinus"
app:layout_column="3"
app:layout_row="3"
android:background="@drawable/custom_button"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="Subtract"
android:text="-"
android:textColor="@color/light_grey" />
<Button
android:id="@+id/ButtonDivide"
app:layout_column="3"
app:layout_gravity="right"
app:layout_row="1"
app:layout_rowSpan="2"
android:background="@drawable/custom_button"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="Divide"
android:text="/"
android:textColor="@color/light_grey" />
<Button
android:id="@+id/button0"
app:layout_column="0"
app:layout_columnSpan="2"
app:layout_row="4"
android:background="@drawable/button_light_grey"
android:minHeight="20dp"
android:minWidth="82dp"
android:onClick="numberButtonEventHandler"
android:text="0" />
<Button
android:id="@+id/buttonPoint"
app:layout_column="2"
app:layout_row="4"
android:background="@drawable/button_light_grey"
android:minHeight="20dip"
android:minWidth="40dp"
android:onClick="numberButtonEventHandler"
android:text="."
android:width="20dip" />
<Button
android:id="@+id/ButtonPlus"
app:layout_column="3"
app:layout_row="4"
android:background="@drawable/custom_button"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="Add"
android:text="+"
android:textColor="@color/light_grey" />
<Button
android:id="@+id/ButtonEqueals"
app:layout_column="4"
app:layout_row="3"
app:layout_rowSpan="2"
android:background="@drawable/custom_button"
android:height="40dp"
android:minHeight="82dp"
android:minWidth="20dp"
android:onClick="Equeals"
android:text="="
android:textColor="@color/light_grey"
android:width="40dp" />
<Button
android:id="@+id/Button7"
app:layout_column="0"
app:layout_row="1"
android:background="@drawable/button_light_grey"
android:minHeight="40dip"
android:minWidth="40dip"
android:onClick="numberButtonEventHandler"
android:text="7" />
</android.support.v7.widget.GridLayout>
这是一个项目树的剪贴画,显示引用的库、依赖项和库,所有这些都指向v7 gridlayout:New Edit,要求删除一个引用
这正是我得到的例外:
java.lang.ClassNotFoundException: android.support.v7.gridlayout.R$dimen
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at android.support.v7.widget.GridLayout.<init>(GridLayout.java:255)
at android.support.v7.widget.GridLayout.<init>(GridLayout.java:274)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.instantiateClass(ProjectCallback.java:422)
at com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.loadView(ProjectCallback.java:179)
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207)
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:135)
at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
at android.view.LayoutInflater.inflate(LayoutInflater.java:372)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:385)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:332)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:325)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.RenderService.createRenderSession(RenderService.java:440)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.renderWithBridge(GraphicalEditorPart.java:1545)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1302)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.activated(GraphicalEditorPart.java:1059)
at com.android.ide.eclipse.adt.internal.editors.layout.LayoutEditorDelegate.delegatePageChange(LayoutEditorDelegate.java:686)
at com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.pageChange(CommonXmlEditor.java:360)
at org.eclipse.ui.part.MultiPageEditorPart$2.widgetSelected(MultiPageEditorPart.java:292)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:774)
at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3028)
at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1749)
at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:278)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
尝试删除app:usedaultmargins=true或设为false。尝试删除app:usedaultmargins=true或设为false。我也在使用这个,我就是这样使用这个
看到这一点,我已经添加了一个gridlayout,它被添加到我生成的文件中,但是在你的情况下,不要在生成的文件中添加gridview这就是你面临这个问题的原因,创建生成路径,或者如果你说我将向你发送我的gridview布局,但是,当我在设计文件中添加gridview时,它会自动生成,然后它会自动下载并自动添加引用,所以您可以从设计文件中添加gridview,并且gridlayout也会在生成的文件中,将您的项目与gridviewlayout V7相链接…M也使用它,我就是这样使用它的
看到这一点,我已经添加了一个gridlayout,它被添加到我生成的文件中,但是在你的情况下,不要在生成的文件中添加gridview这就是你面临这个问题的原因,创建生成路径,或者如果你说我将向你发送我的gridview布局,但是,当我在设计文件中添加gridview时,它会自动生成,然后它会自动下载并自动添加引用,所以您可以从设计文件中添加gridview,并且gridlayout也会在生成的文件中,将您的项目与gridviewlayout V7相链接…好的,我用一种奇怪的方式修复了这个问题。如果有人能给我一个解释,我会给他们赏金的!我开始玩虚拟盒子,非常喜欢新的Fedora18。决定双启动以创建android开发环境。下载了与eclipse组合的adt包。我在windows中创建了一个50GB的分区,以便在操作系统之间共享文件,并在那里复制了我的项目。启动Fedora并启动了一个新的android项目。将我的windows项目中的所有文件复制并粘贴到此新项目中,然后。。。。急板地!开箱即用。不修改生成路径或任何其他内容。我收到一个警告:[2013-04-10 07:27:45-gridlayout_v7]警告:无法写入jarlist缓存文件/home/craig/workspace/gridlayout_v7/bin/jarlist.cache,但项目在我的avd中运行时没有问题。怎么回事?为什么它不能在windows下工作而在Linux下工作?好的,我用一种奇怪的方式解决了这个问题。如果有人能给我一个解释,我会给他们赏金的!我开始玩虚拟盒子,非常喜欢新的Fedora18。决定双启动以创建android开发环境。下载了与eclipse组合的adt包。我在windows中创建了一个50GB的分区,以便在操作系统之间共享文件,并在那里复制了我的项目。启动Fedora并启动了一个新的android项目。将我的windows项目中的所有文件复制并粘贴到此新项目中,然后。。。。急板地!开箱即用。不修改生成路径或任何其他内容。我收到一个警告:[2013-04-10 07:27:45-gridlayout_v7]警告:无法写入jarlist缓存文件/home/craig/workspace/gridlayout_v7/bin/jarlist.cache,但项目在我的avd中运行时没有问题。怎么回事?为什么它不能在windows下工作,而在Linux下工作?我遇到了同样的问题,我通过将…/android sdk/extras/android/support/v7/gridlayout作为现有的android代码导入到工作区来修复它 它的项目名称是android.support.v7.widget.GridLayout,这是一个库。那么你应该加上。。。它在Project/Properties/Android/library面板中显示为一个库。那么它应该会起作用。 希望这对你有帮助 下面是我的xml:
<ScrollView
xmlns:grid="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="10dp" >
<android.support.v7.widget.GridLayout
android:id="@+id/gridlayout_home"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:paddingBottom="5dp"
grid:columnCount="4"
grid:rowCount="4" >
</android.support.v7.widget.GridLayout>
</ScrollView>
我遇到了同样的问题,我通过将…/android-sdk/extras/android/support/v7/gridlayout作为现有的android代码导入到工作区来修复它 它的项目名称是android.support.v7.widget.GridLayout,这是一个库。那么你应该加上。。。它在Project/Properties/Android/library面板中显示为一个库。那么它应该会起作用。 希望这对你有帮助 下面是我的xml:
<ScrollView
xmlns:grid="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="10dp" >
<android.support.v7.widget.GridLayout
android:id="@+id/gridlayout_home"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:paddingBottom="5dp"
grid:columnCount="4"
grid:rowCount="4" >
</android.support.v7.widget.GridLayout>
</ScrollView>
我通过将android-support-v7-gridlayout.jar库设置为导出到g
ridlayout_V7项目。我通过将android-support-V7-gridlayout.jar库设置为gridlayout_V7项目上导出的库,解决了这个问题。我也面临同样的问题,通过将android-support-V7-gridlayout.jar引用添加到项目库文件夹来修复 从路径: Android安装\sdk\extras\Android\support\v7\gridlayout\libs 到路径:
Workspace PathApplication name\libs我也面临同样的问题,通过将android-support-v7-gridlayout.jar引用添加到项目库文件夹修复了这个问题 从路径: Android安装\sdk\extras\Android\support\v7\gridlayout\libs 到路径:
Workspace PathApplication name\libs没有人有任何想法?您似乎从两个不同的位置导入了v7库。请尝试删除引用库中的引用。@RaghavSood我按照您的要求从生成路径中删除了一个引用,但仍然收到相同的错误。我现在已经发布了我从eclipse收到的确切错误。没有人有任何想法?您似乎从两个不同的位置导入了v7库。请尝试删除引用库中的引用。@RaghavSood我按照您的要求从生成路径中删除了一个引用,但仍然收到相同的错误。我现在已经发布了我从eclipse收到的确切错误。如果它在生成的文件夹中,它不应该自己生成吗?我无法复制那里的v7网格布局,因为当我清理项目时,它会被删除。不,如果您在“配置生成路径”中为它指定路径,那么清理后它将不会被删除在Linux中查看我的代码后,我发现生成的代码中实际上有support.v7.gridview。在windows中,这仍然不起作用,但我认为这是eclipse的问题。如果它在生成的文件夹中,它不应该自己生成吗?我无法复制那里的v7网格布局,因为当我清理项目时,它会被删除。不,如果您在“配置生成路径”中为它指定路径,那么清理后它将不会被删除在Linux中查看我的代码后,我发现生成的代码中实际上有support.v7.gridview。在windows中,这仍然不起作用,但我认为这是eclipse的问题。我缺少.widget部分,这意味着我导入了错误的项目?这不是解决方案。GridLayout和GridView是用于完全不同的事情的不同组件。我缺少.widget部分,这意味着我导入了错误的项目?这不是一个解决方案。GridLayout和GridView是用于完全不同的事情的不同组件。这不是一个解决方案。GridLayout和GridView是用于完全不同的事情的不同组件。这不是一个解决方案。GridLayout和GridView是用于完全不同的事情的不同组件。这不是一个解决方案。GridLayout和GridView是用于完全不同的事情的不同组件。这不是一个解决方案。GridLayout和GridView是用于完全不同事物的不同组件。