Absturz bei Spinner.setAdapter()

S

Scanner

Neues Mitglied
0
Hallo zusammen,

seit einigen Tagen befasse ich mich mit Abdroid. Bis jetzt habe ich mir einige Arbeiten angeschaut und etwas Theorie durchgelesen.

Beim ersten praktischen Versuch bin ich auf ein Problem gestoßen und komme einfach nicht weiter.

Der Code:
Code:
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Spinner s1 = (Spinner) findViewById(R.id.rowView);
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                this, R.array.zeilen, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);          
        s1.setAdapter(adapter);
    }
Die Zeile
Code:
[I]s1.setAdapter(adapter); [/I]
verursacht laut Logcat eine NullPointerException.
Habe schon einige andere Versionen des Codes ausprobiert, aber immer das selbe - bei der Zeile s1.setAdapter(adapter); gibt es einen Absturz der app.

Hat jemand eine Idee warum das passiert?

Gruß
 
Sieht nicht falsch aus. Wie sehen denn die zugehörigen Resourcefiles aus?
 
Ich habe unter values eine Datei namens array.xml angelegt und der Inhalt sieht wie folgt aus:

Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <array name="zeilen">
        <item>value_1</item>
        <item>value_2</item>
        <item>value_3</item>
        <item>value_4</item>
        <item>value_5</item>
    </array>
</resources>
Habe es sogar mit einem normalen Array brobiert, aber immer das selbe:confused:.

Gruß
 
Könntest du auch bitte die main.xml mal zeigen?! Die einfachste Lösung wäre, dass
Code:
Spinner s1 = (Spinner) findViewById(R.id.rowView);
null zurückgibt.
 
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
    <RadioGroup android:id="@+id/position"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

        <RadioButton android:id="@+id/start"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Stauanfang"/>

        <RadioButton android:id="@+id/ende"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Stauende"/>
    </RadioGroup>
    <Spinner
    android="@+id/rowView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />
</LinearLayout>
Im Prinzip ganz einfach.
Gibt es eventuell eine Konvention für die Namensvergabe?

Gruß
 
Habe es gerade mit einer ListView probiert und wieder mit dem selbem Problem. Bei der Zeile mit
Code:
lv.setAdapter(listAdapter)
sturzt die APP ab.

Werde mir das SDK mal neu Laden und alles wiederholen. Sonst habe ich keine Idee mehr.

Gruß
und Danke
 
Es liegt nicht an deinem SDK. Ich kann es bei mir reproduzieren! :eek:
Die NullPointerException geschieht, da
Code:
findViewById(R.id.rowView);
null zurück gibt und beim Versuch darauf zuzugreifen passiert es halt.

Das wirklich seltsame aber ist, dass er den Spinner wirklich nie zu finden scheint!? Hab es auf Andorid 1.5 + 2.1 probiert, gleiches Ergebnis. Alles bis auf den Spinner aus main.xml raus oder findViewById in onResume, nichts verändert sich. Bei anderen Codes funktioniert es so, nur scheinbar bei deinem Code nicht :mad::eek:
 
Mmh, Da ich da jetzt auch keinen Fehler sehe... liegt es vllt an dem @string/hello... gibt es die strings.xml ? Wirkt ja schon sehr strange gerade ^^
 
Raidri schrieb:
Mmh, Da ich da jetzt auch keinen Fehler sehe... liegt es vllt an dem @string/hello... gibt es die strings.xml ? Wirkt ja schon sehr strange gerade ^^

Das IDE würde sonst ja bereits motzen, wenn der String fehlen würde
 
Vielen Dank für die Hilfe,
werde mich erstmal mit anderen Elementen befassen und kehre wieder hierhin wenn ich mehr Ahnung von der Materie habe.


Danke nochmal


Gruß
 
Habe mir das SDK mal trotzdem neu gezogen und siehe da – es läuft.
Der Spinner ist != null und alles funktioniert.
Also das ganze bleibt wohl ein Ministerium, aber ich bin froh das es klappt.:)

Danke Euch allen
 
Ich hatte grad ein ähnliches Problem. Falls nochmal jemand über diesen Post stolpert:
Code:
<Spinner
    android="@+id/rowView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />
Das erste Attribut sollte android:id heißen.
 

Ähnliche Themen

D
Antworten
17
Aufrufe
408
datNeMo
D
M
Antworten
3
Aufrufe
166
moin
M
Y
Antworten
4
Aufrufe
1.227
swa00
swa00
Zurück
Oben Unten