Variable ausgeben

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Variable ausgeben

    Hallo Leute

    Ich versuche eine Variable auszugeben:

    Java-Quellcode

    1. String s = Float.toString(MeineVariable);
    2. View.setText(s);


    Kann bitte jemand mir sagen warum bei setText folgende Fehler angezeigt wird:
    The method setText(String) is undefined for the type View



    Vielen Dank für die Hilfe
    Grüße

  • Hallo und erst einmal Herzlich Willkommen im Forum.

    Das Problem ist, dass ein View keine setText-Methode bereitstellt.
    Wenn du einen Text darstellen möchtest, dann musst du ein TextView nehmen.
    Da du jedoch wenig Code bereitstellst, ist es schwierig, dir eine genaue Lösung zu geben.
    Also kann ich dir nur den Tipp geben, dass du mal ein TextView nimmst.
    MfG,
    Christopher

    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke
  • Hallo Kogoro-Christopher

    ich danke dir für die Hilfe.
    Ich habe gedacht dass ich eine Lösung für setText(string) gefunden habe, allerdings ich kann jetzt die App auf mein Handy nicht mehr testen, die App wird angehalten.

    Ich weiß es nicht was ich falsch mache :(

    Mein Java schaut so aus:

    Java-Quellcode

    1. protected void onCreate(Bundle savedInstanceState) {
    2. super.onCreate(savedInstanceState);
    3. setContentView(R.layout.activity_beispiel_app);
    4. EditText Name = (EditText) findViewById(R.id.EditTextID);
    5. float MeineVariable = Float.parseFloat(Name.getText().toString());
    6. TextView Ausgabe = (TextView) findViewById(R.id.TextViewID);
    7. String s = Float.toString(MeineVariable);
    8. Ausgabe.setText(s);
    9. }
    Alles anzeigen


    P.S.
    die App soll nur einen String in Variable umwandeln und sie als Text ausgeben

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von deiko79 ()

  • Ich denke mal, das ist nur ein Funktionstest.
    Meiner Meinung nach ist es sinnlos einen Text zu nehmen, in irgendwas zu wandeln und dann wieder in einen Text zu wandeln – man hätte ihn ja gleich als Text nutzen können.

    Wenn Deine App anhält, dann hast Du im Fenster 'LogCat' sicherlich diverse Einträge stehen, davon einige in roter Schrift.
    Was steht da bei Dir?

    (Vermutlich eine NullPointerException.)
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«
  • Hi,
    der Fehler steht ja dort im Prinzip schon drin:

    Quellcode

    1. Caused by: java.lang.NumberFormatException: Invalid float: ""

    Ein leerer String führt dazu, dass er keinen Float daraus erstellen kann.
    Also vorher auf Leerheit überprüfen ;)
    MfG,
    Christopher

    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke
  • ich habe jetzt in EditText den Wert "0" als String eingegeben und die App funktioniert endlich.

    Es ist ein bisschen doof weil der Benutzer erstmal kapieren muss dass er da eine andere Zahl eingeben muss, aber ich kann damit erstmal leben.

    Allerdings egal welche Nummer in EditText steht bekomme ich als Ausgabe "0,0" ???

    was ist falsch hier:

    Java-Quellcode

    1. TextView BL_Ausgabe = (TextView) findViewById(R.id.TextViewID);
    2. String s = Float.toString(MeineVariable);
    3. BL_Ausgabe.setText(s);


    Danke nochmal für eure Hilfe.
  • Garnichts denn ein Float beschreibt immer eine Kommazahl. Daher ist 0 0,0 und 1 1,0.
    Für ganze Zahlen nimm einen Integer ;)
    MfG,
    Christopher

    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke