java.lang.nullpointerexception

Diskussion i 'Frågor, support och diskussion' startad av sandylarsson, 28 sept 2010.

  1. sandylarsson

    sandylarsson Infant Droid Medlem

    Blev medlem:
    28 sept 2010
    Inlägg:
    3
    Mottagna gillanden:
    0

    MINA ENHETER

    Hej, sitter med min första app och har stött på ett problem.

    När jag gör en findViewById så returneras det null trots att jag har en spinner med det id:t. Detta gör att jag får en java.lang.nullpointerexception.

    Jag har googlat runt en massa men inte hittat några konkreta svar som fungerar.

    Någon som har nån idé?


    Kod:
    private String[] genres;
    private Spinner spinner;

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

    genres = new String[2];
    genres[0] = "Action";
    genres[1] = "Manga";

    spinner = (Spinner)findViewById(R.id.spinnerId);
    ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this,
    R.layout.spinner, genres);

    if(s != null)
    spinner.setAdapter(adapter);
    else
    Toast.makeText(this, "Spinner är null", Toast.LENGTH_LONG).show();
    }

    main.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android: orientation="vertical" >
    <TextView android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello" />
    </LinearLayout>

    spinner.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android: orientation="vertical" >
    <Spinner
    android:id="@+id/spinnerId"
    />
    </LinearLayout>
     
  2. johnAls

    johnAls Youth Droid Medlem

    Blev medlem:
    28 maj 2009
    Inlägg:
    158
    Mottagna gillanden:
    58

    MINA ENHETER

    Finns spinnern i din main.xml? Du anger att du jobbar med main med setContentView(R.layout.main); som layout, då kommer den bara ladda det som finns i main
     
  3. sandylarsson

    sandylarsson Infant Droid Medlem

    Blev medlem:
    28 sept 2010
    Inlägg:
    3
    Mottagna gillanden:
    0

    MINA ENHETER

    Nej det gör den inte, jag är nog inte riktigt med på hur upplägget skall se ut.

    Skall det bara finnas en xml som skall innehålla allt eller kan man dela upp det?
    Ifall jag lägger till spinnern i main.xml så får jag fel. Det är lustigt alltihop eftersom jag följer en tutorial och därför borde funka. Men men :P

    I min Arrayadapter så skall jag ange en spinner vilket jag gjorde från min spinner.xml.
    Om spinner.xml skall bort så skall jag använda android.R.layout.simple_spinner_item?
    ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this,
    R.layout.spinner, genres);
     
  4. sandylarsson

    sandylarsson Infant Droid Medlem

    Blev medlem:
    28 sept 2010
    Inlägg:
    3
    Mottagna gillanden:
    0

    MINA ENHETER

    Det funkar.. O.o

    Tog bort all kod och gjorde om det från början.
    Hade antagligen fått med något slarv.

    Tack för hjälpen ändå :)