title: Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object ref
body: <p>I'm trying to display data in a listView. I have the current code attempting to take an array that is passed in from the myDatabase class, and then display this within my listView.</p>
  
  <p><strong>However I got an error</strong>:</p>
  
  <blockquote>
    <p>"Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object reference". </p>
  </blockquote>
  
  <p>My code is working in main activity when I remove the code for the listView element, in it's place I've tested to ensure the passed in array outputs correctly (which it does). I'm not sure what I'm doing wrong to have this error thrown up.</p>
  
  <p><strong>MainScreenActivity.java</strong></p>
  
  <pre><code>public class MainScreenActivity extends AppCompatActivity {
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main_screen);
  
      // Find View-elements
      Button trackButton = (Button) findViewById(R.id.trackSelectButton);
  
      // Create click listener for trackSelectionButton
      trackButton.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {                
              trackInput();
  
              // Start Track List Activity
              Intent trackScreen = new Intent(v.getContext(), TrackListActivity.class);
              startActivity(trackScreen);
          }
      });        
  }
  
  public void trackInput(){
  
      MyDatabase mDb = new MyDatabase(this);
  
      String[] tracks = mDb.fetchDatabaseTracks();
      ArrayAdapter&lt;String&gt; trackAdapter =
              new ArrayAdapter&lt;String&gt;(this,
                      android.R.layout.simple_list_item_1,
                      android.R.id.text1, tracks);
  
      ListView lv = (ListView) findViewById(R.id.listView);
      lv.setAdapter(trackAdapter);
  }
  </code></pre>
  
  <p><strong>TrackListActivity.java</strong></p>
  
  <pre><code>public class TrackListActivity extends AppCompatActivity {
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_track_list);
  
      getSupportActionBar().setDisplayHomeAsUpEnabled(true);
  }
  </code></pre>
  
  <p>}</p>
  
  <p><strong>activity_track_list.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"
  android:paddingBottom="@dimen/activity_vertical_margin"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  tools:context="com.example.autoplaylist.catalog.TrackListActivity"&gt;
  
  &lt;ListView
      android:id="@+id/listView"
      android:layout_width="match_parent"
      android:layout_height="match_parent" /&gt;
  </code></pre>
  
  <p></p>
  
  <p><strong>activity_main_screen.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"
  android:paddingBottom="@dimen/activity_vertical_margin"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  tools:context=".MainScreenActivity"&gt;
  
  &lt;TextView
      android:id="@+id/welcomeMessage"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/opening_message"
      android:textSize="18sp"
      android:fontFamily="sans-serif-light"
      android:layout_marginBottom="10dp"/&gt;
  
  &lt;RelativeLayout
      android:id="@+id/relLayout1"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:orientation="horizontal"&gt;
  
      &lt;Button
          android:id="@+id/trackSelectButton"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_alignParentBottom="true"
          android:layout_alignParentLeft="true"
          android:layout_alignParentStart="true"
          android:layout_alignParentTop="true"
          android:text="Track selection" /&gt;
  
  &lt;/RelativeLayout&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p><strong>Error log</strong></p>
  
  <pre><code>java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object reference
  at com.example.autoplaylist.catalog.MainScreenActivity.trackInput(MainScreenActivity.java:61)
  at com.example.autoplaylist.catalog.MainScreenActivity$1.onClick(MainScreenActivity.java:29)
  at android.view.View.performClick(View.java:5204)
  at android.view.View$PerformClick.run(View.java:21153)
  at android.os.Handler.handleCallback(Handler.java:739)
  at android.os.Handler.dispatchMessage(Handler.java:95)
  at android.os.Looper.loop(Looper.java:148)
  at android.app.ActivityThread.main(ActivityThread.java:5417)
  at java.lang.reflect.Method.invoke(Native Method)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
  </code></pre>