Ich möchte ein EditText-Feld in meiner Android App validieren. Das Feld ist Spinner. Die Eingabeaufforderung ist in der XML-Datei definiert. Wenn ich es in der Konsole ausgibt, wird es korrekt angezeigt. Wenn jedoch einen Teil der Struktur eines Toasts, innerhalb einer Methode, die Adresse des Spinners wird gedruckt anstatt die Aufforderung: Spinner Validierung in einer Validieren Klasse:Wie bekomme ich die Aufforderung eines Spinner via Methode?
public static boolean spinnerValidated(Spinner spinner) {
return spinner.getSelectedItemPosition()==(0);
}
Es ist Aufruf in der Hauptklasse:
private void validateSpinner(Spinner spinner) {
if (Utility.spinnerValidated(spinner)) {
Toast.makeText(getApplicationContext(),
"Invalid data for field " + spinner.getPrompt().toString(),
Toast.LENGTH_LONG).show();
}
}
Aufruf der Methode:
validateSpinner(spinner);
Spinner xml:
<Spinner
android:id="@+id/spinner"
style="@style/spinner"
android:background="@drawable/edit_text_rectangle"
android:spinnerMode="dialog"
android:prompt="@string/subcategory"/>
Und der Stil:
<style name="spinner">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_marginLeft">12dp</item>
<item name="android:layout_marginRight">12dp</item>
<item name="android:layout_marginBottom">5dp</item>
<item name="android:layout_marginTop">5dp</item>
<item name="android:paddingTop">8dp</item>
<item name="android:paddingBottom">8dp</item>
</style>
Zeigen Sie xml. Dein Code scheint in Ordnung zu sein. –
Ich habe es gerade hinzugefügt, danke! – user6456773
Dieser Code sollte funktionieren. Ich kann nichts falsch finden. –