webentwicklung-frage-antwort-db.com.de

Android-Supportpaket v7 für Eclipse - GridLayout einrichten

Ich habe dies den ganzen Abend ohne Erfolg versucht, daher werde ich meine genauen Schritte auflisten, die von vorne anfangen.

  • Ich habe das Support-Paket über den SDK-Manager installiert.
  • Ich erstelle ein neues Android-Projekt, das ich "testinggridlayout" nenne.
  • Als Build-Ziel wähle ich Android 2.1 API 7.
  • Listenpunkt

Dies ist mein Projekt, mit dem ich ein Gitter erstellen kann Layout auf.


Um das Support-Paket einzurichten, sind meine Schritte:

  • Klicken Sie mit der rechten Maustaste auf das gerade erstellte Projekt, und wählen Sie - Neu -Android-Projekt
  • Nennen Sie es GridLayout, und wählen Sie Projekt aus vorhandener Quelle erstellen Und navigieren Sie zu:

Android-SDKs\Extras\Android\Support\V7\Gridlayout

  • Klicken Sie mit der rechten Maustaste auf mein Projekt testinggridlayout und klicken Sie auf Eigenschaften:
  • wählen Sie unter Java-Erstellungspfad die Registerkarte Projekte und dann Hinzufügen aus.
  • wählen Sie mein Projekt "GridLayout" aus und klicken Sie auf OK und dann auf OK.

An diesem Punkt

Wenn ich in das main.xml-Layout gehe, füge diesen Code manuell ein:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:orientation="vertical" >

<GridLayout
    Android:background="#FFFFFF"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:columnCount="8"
    Android:rowCount="5" >

</GridLayout>

</LinearLayout>

Ich bekomme den Fehler:

Die folgenden Klassen konnten nicht gefunden werden: - GridLayout (fix build Pfad, XML bearbeiten).

Wenn ich mich ändere

<GridLayout> & </GridLayout>
zu 
<Android.support.v7.widget.GridLayout> & </Android.support.v7.widget.Gridlayout>

Ich erhalte den gleichen Fehler:

Die folgenden Klassen konnten nicht gefunden werden: - Android.support.v7.widget.GridLayout (Build-Pfad korrigieren, XML bearbeiten).

Zu diesem Zeitpunkt habe ich in meinem Projekt einen Ordner mit dem Namen "libs" erstellt.

Ich habe dann die Android-support-v7-GridLayout.jar-Datei unter libs im GridLayout-Projekt in diesen Ordner kopiert.

Ich habe diese Datei in meinem "libs" -Ordner in "testinggridlayout" mit der rechten Maustaste angeklickt und "Zu Build-Pfad hinzufügen" ausgewählt.

Mein Fehler hat sich dann geändert in:

Die folgenden Klassen konnten nicht instanziiert werden: - Android.support.v7.widget.GridLayout (offene Klasse, Fehlerprotokoll anzeigen)

Welche Bits habe ich verpasst/hätte nicht tun sollen?

34
Kyohei Kaneko

Ich benutze Intellij Idee, also ist es nicht genau Ihr Fall, aber vielleicht wird es hilfreich sein. Ich hatte den ganzen Tag Mühe, das einzurichten, dann funktionierte es plötzlich. Ich beschreibe mein Setup, damit Sie Folgendes vergleichen können:

  1. richten Sie das GridLayout-Projekt als Bibliotheksprojekt ein. Ein Beispiel für die Einrichtung finden Sie unter Android developer site hier
  2. richten Sie Ihr Hauptprojekt wie gewohnt ein. Verweisen Sie auf das Bibliotheksprojekt, wie im obigen Link beschrieben.
  3. fügen Sie Ihrem Hauptprojekt Bibliotheken hinzu. Ich habe den neuesten Android-support-v13.jar und Android-support-v7-gridlayout.jar verwendet. HINWEIS: Ich habe die v7-Unterstützungsbibliothek im Hauptprojekt verwendet, nicht im Bibliotheksprojekt. Wenn ich es jetzt überprüfe, beziehe ich mich im Bibliotheksprojekt nicht auf die v7-Unterstützung .
  4. Verwenden Sie den vollständigen Paketnamen in der Layoutdatei: <Android.support.v7.widget.GridLayout /> anstelle von <GridLayout />
  5. verwenden Sie einen benutzerdefinierten Namespace wie den folgenden: xmlns:grid="http://schemas.Android.com/apk/res-auto" in Ihrer Layoutdatei, um benutzerdefinierte Attribute zu verwenden, die im Bibliotheksprojekt in Ihrem Tag definiert sind, z. B. grid:columnCount

hoffe das hilft. Ich versuche es gerade, bin mir nicht mal sicher, ob ich es brauche :)

15
khusrav

Wenn jemand dasselbe Problem hat, hier eine Lösung, die für mich funktioniert hat:

Nachdem Sie ein Projekt in einen Arbeitsbereich importiert haben, müssen Sie es als Abhängigkeit über die Registerkarte Android und nicht über Java Build Path hinzufügen

Projekt -> Eigenschaften -> Android -> Bibliothek -> [Hinzufügen ...]

Ich habe auch Is Library angekreuzt.

10
Mahakala

Kopieren Sie Android-support-v7-gridlayout.jar aus dem Ordner Android_SDK_Ordner\extras\Android\support\v7\gridlayout\libs . Fügen Sie es dann in Ihr Projekt MyAndroidProject\libs ein.

5
Sridhar Nalam

Die Version 7 von support-v7-gridlayout.jar hatte einige Probleme. Jetzt wurde es auf Version 8 aktualisiert, siehe Kompatibilitätsbibliothek das Support-Paket für alle Ihre Bibliothek und Abhängigkeiten, oder Sie haben einen Fehler der Nichtübereinstimmung.

4
Marckaraujo

Bearbeiten Sie die .classpath-Datei Ihres Projekts (und auch Ihres Bibliotheksprojekts) wie folgt:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry exported="true" kind="con" path="com.Android.ide.Eclipse.adt.Android_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.Android.ide.Eclipse.adt.DEPENDENCIES"/>
    <classpathentry exported="true" kind="con" path="com.Android.ide.Eclipse.adt.LIBRARIES"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>
2
Lingviston

Zusätzlich zu den oben aufgeführten Vorschlägen musste ich noch etwas tun, bevor ich eine Vorschau des Rasterlayouts in Eclipse erstellen konnte: 

  1. Klicken Sie mit der rechten Maustaste auf das Projekt Android-support-v7-gridlayout.
  2. Gehen Sie zu Eigenschaften> Java-Erstellungspfad> Bibliotheken
  3. Fügen Sie den Bibliotheken libs/Android-support-v7-gridlayout.jar hinzu.
  4. Gehen Sie zu Bestellen und Exportieren und überprüfen Sie das im vorherigen Schritt hinzugefügte Glas.

Ich hoffe es hilft!

1
argenkiwi

Um 7V-Beispiele (/ Extras/Android/Support/Samples/Support7Demos /) zu aktivieren, führen Sie folgende Schritte aus:

  1. Importieren Sie alle Projekte von hier/Extras/Android/Support/V7
  2. Erstellen Sie das/libs-Verzeichnis für das Support7Demos-Projekt
  3. Legen Sie alle * .jar-Dateien im Verzeichnis/libs dieser Projekte ab und fügen Sie sie zu Support7Demos/libs hinzu
0
zest