- Forum-Beiträge: 32
28.06.2017, 15:57:30 via Website
28.06.2017 15:57:30 via Website
Hallo ich habe vor ein Taschenrechner zu programmieren. Bis jetzt habe ich geschafft das ich jeden Button drücken kann und mir dann auch der Text ausgegeben wird auch mit Operatoren. Aber ich weiß nicht wie ich die eingegebenen Zahlen in ein float umwandeln kann damit ich mit den weiter rechnen kann.
Bis jetziger Code:
TextView eingabe;
TextView ergebnis;
StringBuilder screenTextMath = new StringBuilder("");
StringBuilder textMath = new StringBuilder("");
StringBuilder textMathoperator = new StringBuilder("");
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.btn0){
if (screenTextMath.length()<48) {
textMath.append("0");
screenTextMath.append("0");
}
eingabe.setText(screenTextMath);
}
if (id == R.id.btn1){
if (screenTextMath.length()<48) {
textMath.append("1");
screenTextMath.append("1");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn2){
if (screenTextMath.length()<48) {
textMath.append("2");
screenTextMath.append("2");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn3){
if (screenTextMath.length()<48) {
textMath.append("3");
screenTextMath.append("3");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn4){
if (screenTextMath.length()<48) {
textMath.append("4");
screenTextMath.append("4");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn5){
if (screenTextMath.length()<48) {
textMath.append("5");
screenTextMath.append("5");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn6){
if (screenTextMath.length()<48) {
textMath.append("6");
screenTextMath.append("6");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn7){
if (screenTextMath.length()<48) {
textMath.append("7");
screenTextMath.append("7");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn8){
if (screenTextMath.length()<48) {
textMath.append("8");
screenTextMath.append("8");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btn9){
if (screenTextMath.length()<48) {
textMath.append("9");
screenTextMath.append("9");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btndiv){
if (screenTextMath.length()<48) {
textMathoperator.append("/");
screenTextMath.append("/");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btnmul){
if (screenTextMath.length()<48) {
textMathoperator.append("*");
screenTextMath.append("*");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btnminis){
if (screenTextMath.length()<48) {
textMathoperator.append("-");
screenTextMath.append("-");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btnplus){
if (screenTextMath.length()<48) {
textMathoperator.append("+");
screenTextMath.append("+");
}
eingabe.setText(screenTextMath);
}
else if (id == R.id.btndot){
if (screenTextMath.length()<48) {
textMathoperator.append(".");
screenTextMath.append(".");
}
eingabe.setText(screenTextMath);
}
else if(id == R.id.btnclear){
textMath = new StringBuilder("");
screenTextMath = new StringBuilder("");
eingabe.setText("");
ergebnis.setText("");
}
}
Bei fragen einfach fragen. Hoffe ihr könnt mir helfen.
Danke im voraus
— geändert am 28.06.2017, 16:37:09
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.