Wie externe Klasse in Projekt einbinden und aufrufen?

  • 11 Antworten
  • Letztes Antwortdatum
F

Fred12

Gast
hi,
ich nutze Android Studio und möchte für mein Tschenrechner Projekt einen externen parser benutzen und einbinden : Download exp4j

nun meine Frage: wie muss ich den in mein Projekt einbinden und wie rufe ich den dann auf? ich muss ja den Rechenausdruck aus meinem EditText holen und irgendwie übergeben an die Klasse nehme ich an, und diese liefert einen Wert zurück an mein EditText Feld oder?
 
1. Indem du es als Library hinzufügts How do I add a library project to the Android Studio?

2. Auf der Internet Seite steht doch alles? Wo ist also dein Problem?
Code:
double varX = /*Irgendwas*/;
double varY = /*Irgendwas*/;

Calculable calc = new ExpressionBuilder("1 * 1 / x * y")
        .withVariable("x", varX)
        .withVariable("y", varY)
        .build()
double result1=calc.calculate();

//Wenn du das Ergebniss als String haben willst:
String ergebniss = String.valueOf(result1);

Ps: Coole Library, habe auch verwendung dafür, danke :D
 
jo ich hab die eingebunden, soweit ok nur irgendwie schaffe ich es nicht ein Ausdruck zu übergeben und ausrechnen zu lassen und an das Display zu übergeben...

Code:
    public void equal(View view) {

        ExpressionBuilder calc;
        calc = new ExpressionBuilder(s).calculate();
        display.setText(calc);
    }
der ExpressionBuilder akzeptiert kein string und EditText wil auch kein calc übernehmen... hmm irgendwie ist die Doku zu der Klasse nicht so hilfreich für mich...
 
Was ist "s"?
 
oh stimmt ja , s war ja stringBuffer ;P
ok ich hab jetzt ein string übergebene, scheint er soweit zu akzeptuieren, nur wie werte ich diesen string aus? hmm
Code:
 public void equal(View view) {
        String string = new String(s);
        ExpressionBuilder calc;
        calc = new ExpressionBuilder(string);
        display.setText(calc); //<-nicht akzeptiert...
    }

Edit: misst er gibt noch komische Error aus..
Code:
GradleError: package de.congrace.exp4j does not exist... 
GradleError: cannot find symbol ExpressionBuilder..
was heißt das schon wieder? ließ sich nochproblemlos in die libraries aufnehmen und einbinden, und import ging doch auch wunderbar.. ?
import de.congrace.exp4j.Calculable;
import de.congrace.exp4j.ExpressionBuilder;
 
Zuletzt bearbeitet:
calc ist ein ExpressionBuilder, keine Zahl, kein String, sonst was

Auf der Homepage steht doch eh das du zuerste asrechnen musst.
z.B.: double result1=calc.calculate();

und das dann zu einem String und dann kannst du den String in einem TextView oder whatever anzeigen
 
  • Danke
Reaktionen: Fred12
gut ich denke dann wär das gelöst, ich versteh nur immernoch nicht warum er die blöde Fehlermeldung mit dem GradleDings da wirft (s.o)
 
Gradle??
 
Gradle:Error: package de.congrace.exp4j does not exist Gradle:Error: cannot find symbol ExpressionBuilder

ich glaub da war noch was mit der gradle.built Datei die muss man erst irgendwie kompilieren:
compile files('libs/xxx.jar') oder so ähnlich
oder hat es bei dir direkt geklappt??
 
ka verwende nicht das Android Studio, code nur am Handy
 
mit welchem Prog codes du am Handy android apps??
 
Zurück
Oben Unten