Problem mit Berechnung mit int und float



  • Ich bekomme die Berechnung der Icongröße nicht gebacken. Es kommt immer Die Höhe von chHeight - 2 + marginItem heraus:

        float iconHeight = chHeight * 1.0f - 2 * marginItem * Config.EpgFskGenreIconSize * 100.0f;
        dsyslog("flatPlus: iconHeight: %f, EpgFskGenreIconSize: %f chHeight: %d", iconHeight, Config.EpgFskGenreIconSize * 100.0f, chHeight);
        // flatPlus: iconHeight: 58,000000, EpgFskGenreIconSize: 0,500000 chHeight: 63
    

    Habe schon zig Versuche mit Klammern durch, aber irgendwie stehe ich voll auf dem Schlauch.
    Alle Werte außer Config.FskGenreIconSize sind vom Typ int

    Das kann doch nicht so schwer sein? Im Beispiel sollte eigentlich 50% von chHeight raukommen (abzüglich margin)



  • Hab es jetz so zum laufen gebracht:

        double iconHeight = (chHeight - (2 * marginItem)) * Config.EpgFskGenreIconSize * 100.0f;
        // flatPlus: iconHeight: 26,500000, EpgFskGenreIconSize: 0,500000 chHeight: 63
        
    

Anmelden zum Antworten