Auslesen von Benutzereingaben

  • 2 Antworten
  • Letztes Antwortdatum
F

flah91

Neues Mitglied
0
Hallo erstmal,

ich bin ganz neu auf dem Gebiet "Android-Programmierung" und versuche mich langsam einzuarbeiten.
Ich arbeite mit dem Tutorial: "Apps entwickeln für Android 4 - Galileo Computing".
Ist soweit alles gut und es gab bisher auch keine verständnis Probleme sowie andere Probleme, bis jetzt.
Es geht um das Einlesen von Benutzereingaben.
Ich möchte von einem Widget: Large die Eingabe auslesen. Im Tutorial wurde es folgenderweise gemacht.

In der MainActivity.class wurden zunächst Variablen deklariert:

private Button button_drueck_mich;
private EditText namensfeld;

Als nächstes in der Methode OnCreate die Referenz zugeteilt:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.hallo_android_layout);

// Objektzuweisung
button_drueck_mich = (Button)
this.findViewById(R.id.button_drueck_mich)

namensfeld = (EditText) this.findViewById(R.id.namensfeld);

// Listener
button_drueck_mich.setOnClickListener(this);
}

public void onClick(View v) {

switch (v.getId()) {

case R.id.button_drueck_mich:
text_ausgeben();
break;
}

private void text_ausgeben() {

CharSequence eingabe = namensfeld.getText();

Toast.makeText(this, "Einen Toast auf " + eingabe,
Toast.LENGTH_LONG).show();
}

Ist diese Zeile Code: CharSequence eingabe = namensfeld.getText();
im Quelltext so kommt es zum Fehler, dass die Source nicht gefunden wurde.
Nehme ich sie raus läuft alles ohne Fehler, jedoch kann ich dann nichts Einlesen...

Ich hoffe ich habe mein Problem deutlich genug dargestellt.

Ich bin dankbar für jede Hilfe :D
 
Was meinst du mit dem Fehler "der Source nicht gefunden wurde".
Schau mal im LogCat nach. (Ist unten in ROT makiert) Den fehler hier posten.
Sehe auf anhieb nämlich keinen Fehler..

Gruß
 
  • Danke
Reaktionen: flah91
Dieser Fehler erscheint in der Console:

[2012-08-13 15:45:13 - AppTest] 'default' is not a best match for any device/locale combination.
[2012-08-13 15:45:13 - AppTest] Displaying it with 'Locale Language ___Region __, sw320dp, w320dp, h533dp, Normal Screen, Long screen aspect ratio, Portrait Orientation, High Density, Finger-based touchscreen, Soft keyboard, No keyboard, Exposed navigation, Trackball navigation, Screen resolution 800x480, API Level 10' which is compatible, but will actually be displayed with another more specific version of the layout.

und beim ausführen steht im LogCat:

?:??: W/?(?): Unable to open log device '/dev/log/main': No such file or directory

und im Debugger gibts eine RuntimeException...

alles läuft ganz normal, wenn ich die eine zeile:

CharSequence eingabe = namensfeld.getText();

raus nehme ?!



***EDIT***

ich habe den fehler gefunden :D dank dem tipp vom LogCat habe ich mich im debugger etwas genauer umgesehen und eine NullPointerException gefunden, die die Ursache für alles war...
ich habe ausversehen die ID von der variablen "namensfeld" mit einer anderen vertauscht, sodass die variable namensfeld eine referenz auf null hatte anstatt auf das objekt.
 
Zuletzt bearbeitet:
Zurück
Oben Unten