Beiträge von soern6

    Keine Frage, ich probiere so viel es geht zu lernen und auch zu verstehen, nur muss ich in der kurzen Zeit abstriche machen. Also wenn ich bei einem Begriff wie Hardcoded String und eNum to String Methode nicht gleich aufspringen kann, seht mir das bitte nicht nach...


    Das Problem habe ich mittlerweile (bzw. gerade eben) lösen können. Habe gerade mit dem Dokumentieren begonnen, bin alles nochmal durchgegangen und habe probiert nochmal alles "abzugehen" und dabei muss ich wohl den entscheidenen Fehler rausgehauen haben.


    Danke euch!

    Stimmt, du scheinst recht zu haben, ich hatte ja auch schon nachgesehen und nach der Eingabe von Daten war die SQL DB leer...somit probiere ich hier Daten auszulesen, welche nicht existieren.


    Meine neue Vermutung ist, dass der Fehler hier liegt, insbesondere habe ich Probleme damit, den Stringwert in Zeile 17 in eine Intwert umzuwandeln...
    Ich muss mal rausfinden, wie ich manuell Daten in die DB einfüge...


    Nachtrag: Mir fiel gerade auf, dass das ja quark ist, also habe ich "int NDA = Integer.parseInt(NDAString);" einfach rausgehauen.


    Nachtrag 2: Der Kollege schreibt wieder in die DB, d.h. es nass irgendwas anderes sein...



    Natürlich ist das ganze noch nicht fertig, wäre auch zu schön, neuer logcat:



    Code
    database.sqlite.SQLiteException: no such column: NDA (code 1): , while compiling: SELECT NDA, Startpunkt, Age, Geschlecht, Dauer, Geschwindigkeit, Streckenprofil, Distanz FROM cycling WHERE NDA=-1

    Und jetzt wird es haarig. Da ich nicht nur eine Activity habe, welche sowohl die Eingabemaske als auch die Darstellung über ListView zeigt, wird es nun kompliziert.


    Meine Activity Cycling_Create ist das UI mit zwei TextEdit und sechs Spinner. Hier sollen die Daten in die Datenbank gespeichert werden.
    Die Activity Join soll am Ende die eingegebene Daten aus der SQL Base ziehen und als ListView ausspucken.


    Hier ist mal meine Cycling_Create:






    CyclingJoin hänge ich auch schonmal an, aber da ist noch nicht viel drin...




    Mein Hauptproblem ist derzeit noch beim Schreiben in die Datenbank, da beim Drücken des Create Button die App abstürzt.
    logcat sagt dazu das, womit ich jedoch nicht wirklich was anfangen soll. Das Internet sagt, dass irgendwas mit dem Cursor und der null nicht stimmt, aber da hört es schon auf bei mir. In die DB wird wie gesagt noch nichts geschrieben, erstellt wird sie aber...



    Code
    09-15 20:48:10.459 2027-2027/uni_hannover.sportapp E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: uni_hannover.sportapp, PID: 2027
    android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0


    Ich werde morgen nochmal mit Vollgas rangehen und mit dem Vogella-Link abgleichen und anpassen, aber vielleicht kann mir wer von euch auf die Schnelle schon bei diesem Fehler oder etwas grundsätzlich falschen behilflich sein?

    Hi, ich wieder.


    Habe mich die letzten Tage nochmal dran gemacht und probiert das ganze zu implementieren, jedoch habe ich nicht nur das Tut. von Vogella genommen, sondern auch jenes: http://www.programmierenlernen…ben-und-lesen-in-android/


    Fangen wir mal mit dem DB Helper an:



    Wie auch bei Vogella habe ich als nächstes eine Data Klasse erstellt:



    Weiter geht es mit der Datasource:


    Ich bin gerade dabei, die SQL Tabelle irgendwie in die andere Aktivität zu Laden. Über den Device Monitor und SQLite Browser habe ich die Tabelle bereits ausgelesen und soweit passt alles.So sieht es aus:



    Nun ist mein Plan, dass ich das ganze aus der Aktivität Cycling_Create über die Spinner und TextEdit Maske eingegeben wird und in der Aktivität Cycling_Join in der Form wie im SQLite Browser angezeigt, wieder ausgespuckt wird.
    Erstelle ich dann eine neue Aktivität, wird eine neue Zeile hinzugefügt usw.
    Rausgefunden habe ich bereits, dass es anscheinend zwei Ansätze gibt: ListView und TableLayout.


    Finde aber beide recht kompliziert, gibt es da nicht was einfacheres, welches sich immer automatisch die Daten aus der Database zieht?

    Problem gelöst, wie vermutet ein Leerzeichen oder Komma vergessen, für die Nachwelt:


    Jip, habe ich jetzt auch geändert. Hatte mich schon vorher an eine andere Quelle für SQLite-Tutorials gehalten. Sieht auch insgesamt besser, auch das, was er am Ende ausspucken soll. Endlich mal eine Tabelle, yeah :D


    Ich habe jedoch einen Fehlen, zumindest spuckt mein LogCat dies aus: Er sagt Syntax Fehler in der nähe von Age.


    Ich vermute, dass ich irgendwie die Table falsch definiert habe und irgendwo ein Komma oder Leerzeichen zu viel/wenig gesetzt habe, was ja ein häufiger zu sein scheint.
    Habe schon ein wenig rumprobiert, aber gefunden habe ich leider noch nichts...


    Finde das immer ganz witzig, wenn man wenig Erfahrung und kaum Basics hat, muss man sich seine Happen immer zusammensuchen, diese kombinieren und ist damit Fehleranfällig. Fehler auszumerzen dauert dann gefühlt 1000 Jahre.
    Würde die Sache eigentlich anders angehen, da dies aber für ein Projekt mit Deadline in kürze ist, muss ich erstmal so weitermachen...


    Hallo Marco,


    danke schonmal für deine Hilfe. Wie du fast richtig erkannt hast, geht es im Grunde darum, eine Aktivität zu erstellen, an welcher andere Sportler teilnehmen können. Deswegen soll an der einen Stelle die Aktivität definiert nach Kriterien gespeichert werden und an einer anderen Stelle dann geladen werden, nämlich dort, wo andere Sportler teilnehmen können.
    Eigentlich müsste das ganze logischerweise über einen Server laufen, sonst wäre es ja Quark, aber da mir die Zeit und Mittel fehlen, um mich da noch einzulesen, wollte ich lediglich kurz simulieren, dass das ganze über einen Server läuft.
    Deswegen soll das ganze auch erstmal in der App bleiben und somit nur von der einen in die andere Aktivität wandern.


    Aber irgendwie ahne ich schon, dass ich da wohl oder übel was ändern muss...

    Neuer Tag, neues Problem. Wie gesagt speichert er jetzt brav die XML Datei in dem SharedPrefOrdner. Jetzt würde ich diese XML Datei sehr gerne in einer anderen Aktivität laden und irgendwie darstellen, z.B. in einer Tabelle, welche genau diese in der XML Datei angegegeben Kriterien abbildet?
    Geht das ganze überhaupt über SharedPref oder muss ich auf Internal oder External Storage umschwanken?

    Danke dir für den entscheidenen Tipp! Habe jetzt OnItemSelected Listener auf jeden Spinner angesetzt, sieht schlimm aus, geht aber und das zählt in dem Fall.


    Moin,


    habe aktuell Probleme damit, den verschiedenen Spinnern in meiner App die Adapter zuzuteilen und diese dann in den Shared Preferences zu speichern.
    Bei der Zuteilung der ArrayAdapter habe ich immer die von Android Studio vorgeschlagenen genutzt, also set Adapter, adapter1, adapter2, etc.
    Beim Versuch, die eingegebenen Daten der Spinner nun zu speichern, wird lediglich einer beim holen der Daten über die Retrieve Methode wiederhergestellt, und nicht wie gewünscht alle.


    Ich glaube ich habe auch schon viele Varianten probiert, aber nichts half. Ebenso war es im Netz schwierig, etwas Vergleichbares zu finden...



    Nachtrag: Habe mal in der Shared Preferences Datei nachgesehen: Fülle ich nur die Spinner mit Werten (Alter, Geschlecht, Dauer), so spuckt die Datei lediglich Männlich Männlich Männlich aus. Also muss ja irgendwas mit den Arrays und Adapte-Zuteilung nicht hinhauen...


    Hier ist mal der Code: