Beiträge von whitespace

    Hallo :)


    ich versuche mich heute zum erstem mal an sonem Graphics Zeugs und hänge mich grade an dem Problem auf, dass ich ein erstelltes Canvas nicht Scrollen und somit nicht auf den gesamten Inhalt zugreifen kann :( .


    Ich wollt das eigentlich so toll haben wie bei Öffi die verbindungsübersicht ...
    nach intensiver Internetrecherche stell ich mein Problem mal selber dar.



    Ich habs hinbekommen, dass ich jetzt tatsächlich sowas wie Scrollen kann .. allerdings funktioniert es nicht wies soll(hüpft komisch hin und her) und reagiert natürlich auch erst dann wenn der Finger schon wieder vom DIsplay weg ist.
    Ich habs anstatt mit scrollTo auch schon mit ScrollBy versucht aber da gings nur nach unten und nicht nach oben.


    Bei der Methode getHistoricalY() muss ich ein bis zwei Werte mitgeben aber ich weis nicht genau was er da erwartet damits richtig funktioniert (Doku war nicht sehr aufschlussreich fand ich) deswegen hab ich meinen ersten versuch über me.getAction() == me.ACTION_MOVE auch erstmal verworfen.


    Ich hoffe ihr konnten meiner Erklärung zum Problem folgen und mir irgendwie weiterhelfen :)


    Hier die View:


    Herzlichen Dank schonmal :S

    du kannst nicht zwei variablen vom Typ EditText multiplizieren.


    um da eine Zahl draus zu machen müsstest du anstatt nochmal einen EditText anzulegen,

    Code
    EditText psatz; 
    psatz = editText1;
    EditText gwert; 
    gwert = editText2;


    lieber ein float/double anlegen in dem du dir den Inhalt über getText() holst:

    Code
    float gwert = Float.parseFloat(editText2.getText().toString());
    float psatz = Float.parseFloat(editText1.getText().toString());


    Du holst dir also der Text aus dem Feld und wandelst ihn in einen String um damit du das ganze in ein Float umwandeln kannst (etwas umständlich aber parseFloat erwartet nunmal einen String)


    Um das Ergebnis dann in den dritten EditText zu schreiben musst du anstatt

    Code
    editText3 = gwert*psatz/100;


    mit setText() arbeiten

    Code
    String ergebnis = Float.toString(gwert*psatz/100);
    editText.setText(ergebnis);


    warum ein String? weil setText eine CharSequence (String geht also auch) erwartet und bei einem Float rumpöbeln würde.

    Also die NullPointerException hab ich geklärt


    erstens hab ich natürlich den fehler gemacht, die Methode die das Array erzeugt direkt oben bei der deklaration reinzuhauen, dadurch wird das dbCon objekt erst später erzeugt (in OnCreate) und ist darum natürlich null (Asche auf mein Haupt -.-)


    ich hab den Code jetzt so verändert:


    Danach bekam ich dann eine neue Exception von SQLite, die hab ich recherchiert und festgestellt, dass man anscheinend in der RawQuery kein Stringarray als zweites Attribut mitgeben darf, da es sonst zu besagtem fehler kommt (Warum das so ist hab ich nicht verstanden aber egal)


    Code
    c = dbCon.rawQuery(SQLStatements.SELECT_EINKAUF_ID, null); // Hier gibt es jetzt keinen fehler mehr
    ...
    c = dbCon.rawQuery(SQLStatements.selectEinkaufsliste(id),
       new String[] {SQLStatements.TABLE_LISTE[1], SQLStatements.TABLE_LISTE[2]}); // SQLiteException wegen dem String[]


    Also alles durch null ersetzt und siehe da, es geht :D !

    Hallo :)


    Ich habe ein Problem mit meiner Datenbankverbindung .
    Sobald ich die Variable dbCon verwende um zb ein Statement abzusetzen, bekomme ich eine Fehlermeldung (NullPointException) und die App beendet sich.


    Die Activity in der das ganze passiert sie so aus (der Fehler wird laut Log bei Zeile 23 ausgelöst):


    Ich habe die Objekte für "db" und "dbCon" in der Haupt Activity angelegt, da ich sonst schon bei der Erstellung einen Fehler bekommen würde.
    Die Datenbank wurde schon erstellt und ist mit DummyDaten gefüllt und ich bin mir auch sicher, dass das SQL Statement richtig ist ;)


    Woran liegt es, dass ich einen Fehler bekomme sobald ich das dbCon Objekt auserhalb der Haupt Act. anfasse?


    Vielen Dank schonmal im Vorraus für Ratschläge und Tipps :)