Wie den Einstieg schaffen?

  • Hi Thema,
    Eclipse meckert in der Klasse: KiteweisenListActivity.Java:
    The method query(float, float) in the type KitewiesenLocationQuery is not applicable for the arguments (double, double)


    Ist in zeile 26: KitewiesenLocation[] locations = KitewiesenLocationQuery.query(49.540005, 11.026396);

  • Zitat von vermeer


    Hi Thema,
    Eclipse meckert in der Klasse: KiteweisenListActivity.Java:
    The method query(float, float) in the type KitewiesenLocationQuery is not applicable for the arguments (double, double)


    Ist in zeile 26: KitewiesenLocation[] locations = KitewiesenLocationQuery.query(49.540005, 11.026396);


    Die Werte scheinen wohl zu groß für den Datentyp float zu sein, daher nimmt Java den nächst größeren Datentyp, nämlich double. Ist wohl besser, wenn du alle Geokoordinaten von float auf double änderst. Also nicht nur in KiteLocationQuery, sondern auch KiteLocation - eben alles was mit Geokoordinaten arbeitet.


    Aus ...

    Code
    public static KiteLocation[] query (float latitude, float longitude)
    ...
                        location.setLatitude(Integer.valueOf(line_parts[2]).floatValue());
                        location.setLongitude(Integer.valueOf(line_parts[3]).floatValue());


    ...wird dann z.B.:

    Code
    public static KiteLocation[] query (double latitude, double longitude)
    ...
                        location.setLatitude(Integer.valueOf(line_parts[2]).doubleValue());
                        location.setLongitude(Integer.valueOf(line_parts[3]).doubleValue());


    Und wie gesagt, die KiteLocation Klasse ebenfalls anpassen, so dass statt Float-Werte eben Double-Werte gespeichert werden.

  • Die Änderung hat das gute Eclipse von alleine wohl überall gemacht :)


    Bin auch etwas weiter: Ich glaube in der manifest-datei hat noch <uses-permission android:name="android.permission.INTERNET" /> gefehlt:
    Die App zeigt mir zwar absolut nichts an, aber in der catlog werden die ganzen kitewiesen aufgelistet (allerdings mit Umlautfehler, kann man da noch irgendwo das charset angeben?)...

  • Zitat von vermeer


    Bin auch etwas weiter: Ich glaube in der manifest-datei hat noch <uses-permission android:name="android.permission.INTERNET" /> gefehlt:


    yep, sonst darf deine App kein Internet nutzen


    Zitat


    Die App zeigt mir zwar absolut nichts an, aber in der catlog werden die ganzen kitewiesen aufgelistet (allerdings mit Umlautfehler, kann man da noch irgendwo das charset angeben?)...


    Wenn nichts angezeigt wird, dann stimmt wohl noch was mit der ListView oder dem ListAdapter nicht.


    Charset einstellen kann man machen, nur solltest du das besser auf deinem Server machen. Java arbeitet standardmässig mit UTF-8 und das sollte auch dein serverseitiges Skript verwenden.

  • Hi,


    tolle Lösung - hat mich echt beeindruckt. Ich probiere das gerade aus - und finde aber keine vernünftige Lösung beim Auflösen der Zeichenkette und Übergabe in die Klasse. Der Code hier ist leider noch nciht richtig passend. Wie hast Du denn den Fehler beseitigt?


    Grüße + Danke im voraus,
    jouwe


Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!