Beiträge von FireRider

    Doch doch, b1.setText(...) funktioniert prima ;)
    Allerdings musst du erst den Button aus dem Layout holen, sonst bekommst du ne NullpointerException weil du n leeres Objekt mit Text versehen willst.
    dazu machst du zwischen Button b1; und dem setText folgendes:
    b1 = (Button) findViewById(R.id.BUTTONID);

    In einer Activity kann es nur ein setContentView geben.
    Da du dem Benutzer die nächste Seite zeigen willst, musst du für diese Seite eine eigene Klasse (Activity) erstellen und diese mittels

    Code
    Intent myIntent = new Intent(this,neueSeite.class); startActivityForResult(myIntent,0);


    starten. Die neue Activity musst du natürlich auch im Android Manifest deklarieren.


    PS: wie schafft man Zeilenumbrüche hier im code-tag? oO

    Jo, das habe ich gestern Abend mal noch ausprobiert. ID war immer von 0-...
    Wieso kann man dann Position und ID angeben bei onClick()? Ist ja beides das gleiche (ausser halt int und long).
    Hat sonst jemand eine Idee wie man Records die vom Inhalt mehrmals vorkommen können eindeutig identifizieren kann(über die ListView)?

    Also in diesem Beispiel hast du ein Beispiel in Punkt 4.
    Und der ListView sollte ja die gleichen IDs haben, wie in der Datenbank. Oder vielleicht kann man sie auch mitschicken.


    Hoffe es hilft.


    Danke, dass man beim onItemClick die id und die position mitbekommt hab ich ganz vergessen :)


    Die Position ist die Stelle an der angezeigten Position (z.B. 2 für dritte von oben) und die id der Identifier für den Datensatz (also so wie ein autoincrement primary key in der DB) oder?


    Also auch wenn ich ein Item aus der Liste lösche, wird die ID gleich sein wie in der DB?

    Das ist mir klar, ich habe auch eine ID für jeden Datensatz.
    Momentan habe ich noch alle Datensätze in einer Tabelle, werde sie noch aufsplitten, dann werd ichs über die ID machen.
    (Kann man in einer ListView den Index des angeklickten Items herausfinden? Also bei einem OnItemLongSelectedListener)

    Nimm mal anstatt "LIMIT 1" "LIMIT 0,1"
    Denn bei LIMIT ist der erste "Parameter" der Startwert mit 0 als erstes Element und der zweite die Anzahl der Elemente.
    Bei dir also 0 als Startwert und nur 1 Element ;)


    Hoffe es klappt dann ;)


    Danke für die Antwort, aber leider klappt es immer noch nicht. Es kommt der gleiche Fehler, einfach dass steht LIMIT 0,1 anstatt nur LIMIT 1.

    Moin moin


    Ich lese schon ne Weile hier mit und hab schon ein paar brauchbare Tipps lesen können.
    Hab mich jetzt angemeldet, da ich ein Problem habe, für das ich noch keine Lösung gefunden habe.


    Und zwar möchte ich bei meiner App einen Record aus der Datenbank löschen, allerdings nur einen, denn der Record kann in der Form mehrfach vorhanden sein.
    Mein Delete-Befehl sieht momentan so aus:

    Code
    myDB.execSQL("DELETE FROM" + Noten + " WHERE fach='" + inp + "' AND note='" + ClickedItem + "';");


    Ich habe versucht mit LIMIT 1 das gewünschte Ergebnis zu erzielen, also so:

    Code
    myDB.execSQL("DELETE FROM" + Noten + " WHERE fach='" + inp + "' AND note='" + ClickedItem + " LIMIT 1';");


    Jedoch hat das nicht funktioniert, da es dann zu einer SQLiteException kommt. Ich weiss leider nicht wie ich das ganze Zeugs aus der LogCat bekomme, deshalb schreib ich hier nur die betreffenden Zeilen (ohne den Stacktrace) hin:
    Failure 1 (near "LIMIT" : syntax error) on 0x11d400 when preparing 'DELETE FROM Noten WHERE fach='Mathe' AND note='4.5' LIMIT 1;'.
    Shutting down VM
    android.database.sqlite.SQLiteException: near "LIMIT" : syntax error: DELETE FROM Noten WHERE fach='Mathe' AND note='4.5' LIMIT 1;


    Kann mir jemand helfen, wo mein Problem ist?


    Gruss, FireRider