Im editText solll man normalen Text statt nur Buchstaben eingeben

  • Hallo liebe Community,
    ich hoffe ihr könnt mir helfen ich möchte das wenn man auf einen Button klickt der Text den man eingegebn hat in einem anderen Feld angezeigt wird allerdings klappt das nur wenn man Zahlen eintippt bei Buchstaben stürzt die App ab ich weiß zwar in welcher Zeile der fehler liegt aber nich wie man ihn beheben kann.
    Danke im voraus :)

    Java
    public class MainActivity extends Activity {
    	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);	}		List<String> Notizen = new ArrayList<String>();
    	@Override	public boolean onCreateOptionsMenu(Menu menu) {		// Inflate the menu; this adds items to the action bar if it is present.		getMenuInflater().inflate(R.menu.main, menu);		return true;	}		public void onClick(View view) {				setContentView(R.layout.notizen);	}		public void ButtonKlick (View view){		int editText1;		int Ergebnis;		EditText Feld1 =(EditText)findViewById(R.id.editText1);		EditText FeldErgebnis =(EditText)findViewById(R.id.etErgebnis);		if (Feld1.getText().toString().length() == 0){			return;		}		editText1 = Integer.parseInt(Feld1.getText().toString());     <---- hier ist glaube ich der Fehler		Ergebnis = editText1;				FeldErgebnis.setText(String.valueOf(Ergebnis));	}
    }
  • Na du wandelst den Text deiner Editbox in Integer um


    Integer.parseInt


    und bei Buchstaben bekommst du wahrscheinlich (weil du es nicht abfänmgst einen Konvertierungserror und damit Absturz) müsste aber auch so in deinem
    LogCat window stehen


    http://stackoverflow.com/quest…apsulate-integer-parseint


    public static Integer tryParse(String text) {
    try {
    return new Integer(text);
    } catch (NumberFormatException e) {
    return null;
    }
    }






    Da du ja aber gar keine Zahlen, umrechnen willst, musst du das einfach raushauen und einfach den Text deiner eingabebox zum Text deiner Ergebnisbox machen.




    Noch ein Hinweis:


    In deiner OnCLick Methode holst du Dir jedes Mal die Views per findVIewbyId, das macht man nicht. Bei 2 Views scheint das noch nicht so schlimm, aber bei zig mehr Views bekommt man ein Zeitproblem.


    Lieber als Variable in der Klasse festlegen,
    einmal im onCreate initalisieren und gut ist.

  • Schonmal vielen Dank hab auch gemerkt das er mir das eingegebene im listview doppelt anzeigt hab das schonmal geändert,
    allerdings weiß ich immer noch nich wie ich das mit dem buchstaben und zahlen und nciht nur zahlen mache weil das was sie mir geschrieben haben is ja ne neue methode ich weiß nich wohin damit wie ich das verbinde :)

  • Nein du brauchst doch keine neue Methode. Du wolltest doch das der eingegeben Text in einem anderen EditText erscheint, da musst du nur deine
    Klickmethode ändern.


Jetzt mitmachen!

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