Eclipse-Angabe ein Fehler von android.Unterstützung.v7.- widget.GridLayout Fehler beim instanziieren
Habe ich versucht zu übernehmen GridLayout-Objekt aus der Bibliothek unterstützt, aber es funktioniert nicht. Mein target zu bauen, ist für API version 10. Der XML code, den ich verwende, ist unten gezeigt:
<?xml version="1.0" encoding="UTF-8"?>
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:grid="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android.support.v7.widget.columnCount="6" >
<Button
android:id="@+id/button1"
android.support.v7.widget.layout_column="1"
android.support.v7.widget.layout_columnSpan="2"
android.support.v7.widget.layout_gravity="left"
android.support.v7.widget.layout_row="1"
android:text="Button" />
</android.support.v7.widget.GridLayout>
Wenn Eclipse versucht zu kompilieren, das der Fehler gegeben ist: android.Unterstützung.v7.- widget.GridLayout-Objekt konnte nicht instanziiert werden. Der stack trace ist:
java.lang.NoClassDefFoundError: android/support/v7/gridlayout/R$dimen
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(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.instantiateClass(ProjectCallback.java:402)
at com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.loadView(ProjectCallback.java:166)
at com.android.layoutlib.bridge.android.BridgeInflater.loadCustomView(BridgeInflater.java:205)
at com.android.layoutlib.bridge.android.BridgeInflater.createViewFromTag(BridgeInflater.java:133)
at android.view.LayoutInflater.inflate(LayoutInflater.java:386)
at android.view.LayoutInflater.inflate(LayoutInflater.java:296)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:279)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:318)
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:372)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.renderWithBridge(GraphicalEditorPart.java:1361)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1115)
at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.activated(GraphicalEditorPart.java:941)
at com.android.ide.eclipse.adt.internal.editors.layout.LayoutEditorDelegate.delegatePageChange(LayoutEditorDelegate.java:585)
at com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.pageChange(CommonXmlEditor.java:360)
at org.eclipse.ui.part.MultiPageEditorPart$2.widgetSelected(MultiPageEditorPart.java:290)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240)
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:2746)
at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1433)
at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:257)
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:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
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:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Basiert auf der Tatsache, dass niemand mit diesem problem konfrontiert, vermute ich, dass ich nicht im setup der v7-Bibliothek korrekt. Die Schritte habe ich befolgt:
- Erstellen Sie eine Bibliothek-Projekt an der "gridlayout" Verzeichnis
- Hinzugefügt, die dieses Projekt mein Hauptprojekt
- Hinzugefügt, das Glas vom gridlayout lib-Verzeichnis in das lib Verzeichnis von meinem main-Projekt
Jede Hilfe wird sehr geschätzt.
- Vielen Dank für Ihre Bemühungen um die Hilfe Jungs, aber nichts funktionierte. Aber schließlich die Lösung gefunden. EXTREM peinlich zu sagen, dass ich brauchte, um zu aktualisieren Sie das JAVA auf meinem Rechner. Entschuldigung...
- ich habe genau das gleiche Problem, die Schließung als nicht sinnvoll für mich.
- 🙂 Hoffentlich, wird die Lösung aktualisiert Java für Sie funktionierte auch...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aktualisieren Sie Ihre Bibliothek Kompatibilität zu Version 8, dann Folgen Sie den Anweisungen in README.txt Datei in "extras\android\compatibility\v7\gridlayout" - Ordner.
Hoffe, dies hilft Ihnen.
Hinweise: verwenden Sie grid:columnCount="6" anstelle von android.Unterstützung.v7.- widget.columnCount="6" weil Sie erklären, die das Präfix "grid", in xmlns:grid="http://schemas.android.com/apk/res-auto".
import android.support.v7.widget.GridLayout
weil nur drei widgets sind hier verfügbar - PopupMenu, SearchView, ShareActionProvider. Gibt es eine Voraussetzung Schritt muss folgende Angaben enthalten: die GridLayout-Klasse ?update eclipse, adt (auch version 20 Vorschau 2) , sdk-manager und die support library .
versuchen, eclipse erneut zu starten und sehen, ob das hilft.
versuchen, zu erstellen ein ganz neues Projekt (mit niedrigen sdk verwendet wird für die min und target sdk , aber nicht für das angegeben wird auf das Projekt.properties-Datei ) und ziehen Sie das gridLayout in der visual-editor. dies fügt automatisch die benötigte Bibliothek.
wenn alles nichts hilft , versuchen Sie dieses Beispiel : http://code.google.com/p/android-playground/source/checkout
Ich versuche, eine Reihe von Lösung, die von verschiedenen Mitwirkenden (z.B. Eclipse neu starten, entfernen und hinzufügen der Bibliothek etc)
Nach einem Blick auf diese Website, ich habe die folgenden:
Nach, dass alles für mich funktioniert. Ich bin nicht sicher, welcher Schritt ist der, der es beheben, aber es gibt keinen Schaden versucht.
Es scheint, Sie tun, für Android L aber trotzdem gehören diese Zeile
in Ihrem styles.xml.