title: LoaderManager does not accept 'this'
body: <p>Okay, I surrender. I cannot figure it out.</p>
  
  <p>I'm following a Udacity course on Android Basics and need to figure out how to load data using a Loader. However, when I use the following line, the 'this' is highlighted in red and showing the following error:</p>
  
  <pre><code>Wrong 3rd argument type. Found 'com.example.carl.latestnews.MainActivity', required: 'android.app.LoaderManager.LoaderCallbacks&lt;java.lang.Object&gt;
  </code></pre>
  
  <p>I've googled, stacked and tried suggestion I've found. I've tried creating an inner class which implements the call backs. I've hit a brickwall and I'm sat here scratching my head trying to figure out what I'm missing!</p>
  
  <p>Can anyone tell me what I'm doing wrong here?</p>
  
  <p>Thanks in advance!</p>
  
  <pre><code>package com.example.carl.latestnews;
  
  
   import android.content.Context; 
   import android.os.Bundle; 
   import android.support.v4.app.LoaderManager; 
   import android.support.v4.content.AsyncTaskLoader; 
   import android.support.v4.content.Loader; 
   import android.support.v7.app.AppCompatActivity; 
   import android.view.View; 
   import android.widget.ListView; 
   import android.widget.TextView;
   import java.util.ArrayList;
  
   public class MainActivity extends AppCompatActivity implements LoaderManager.LoaderCallbacks&lt;ArrayList&lt;ArticleObject&gt;&gt; {
  
       // ArticleObject is a custom object which contains a headline, date, category etc of a news article
  
       // URL for Guardian API including API Key
       final static String GUARDIAN_API_URL = "https://content.guardianapis.com/search?";
  
       // API Key
       final static String GUARDIAN_API_KEY = "test";
  
       // ID for LoaderManager
       final static int LOADER_MANAGER_ID = 0;
  
  
       @Override
       protected void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(R.layout.activity_main);
  
           // Get or initialize loader manager
           getLoaderManager().initLoader(LOADER_MANAGER_ID, null, this);
  
       }
  
       @Override
       public Loader&lt;ArrayList&lt;ArticleObject&gt;&gt; onCreateLoader(int id, Bundle args) {
           return new dataLoader(); // dataLoader() removed for easy reading
       }
  
       @Override
       public void onLoadFinished(Loader&lt;ArrayList&lt;ArticleObject&gt;&gt; loader, ArrayList&lt;ArticleObject&gt; data) {
           / UI Update Code
       }
  
       @Override
       public void onLoaderReset(Loader&lt;ArrayList&lt;ArticleObject&gt;&gt; loader) {
           // Reset Code
       }
  
  
  
  
   }
  </code></pre>