Android kann die Absicht des Konstruktors nicht auflösen

Hier ist ein Abschnitt meines Codes. Ich versuche ein Navigationsmenü zu erstellen, in dem beim Klicken auf den ersten Listeneintrag die Aktivität MrsClubb . Wenn ich dies jedoch in meinen Code einfüge, kommt der Fehler auf:

 Cannot resolve constructor 'Intent(android.widget.AdapterView.OnItemClickListener,java.lang.Class)' 

Irgendwelche Ideen, wie man das triggers?

Das Double ** zeigt an, wo im Code der Fehler liegt.

Hier ist der Abschnitt des Codes:

  @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar); mDrawerLayout = (DrawerLayout)findViewById(R.id.drawer); mDrawerList = (ListView)findViewById(android.R.id.list); mDrawerListItems = getResources().getStringArray(R.array.drawer_list); mDrawerList.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, mDrawerListItems)); mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { switch(position) { case 0: Intent i = new Intent**(this, MrsClubb.class);** startActivity(i); } mDrawerLayout.closeDrawer(mDrawerList); } }); mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close){ public void onDrawerClosed(View v){ super.onDrawerClosed(v); invalidateOptionsMenu(); syncState(); } public void onDrawerOpened(View v){ super.onDrawerOpened(v); invalidateOptionsMenu(); syncState(); } }; 

Das Problem:

Sie können dies nicht verwenden, um auf die Activity innerhalb einer inneren class zu verweisen, da this zu einer Referenz auf die innere class wird. Die Bedeutung der constructor not resolved Nachricht des constructor not resolved ist, dass der Compiler sie als interpretiert

 Intent(AdapterView.OnItemClickListener listener, Class class) 

die es nicht erkennt, statt

 Intent(Context context, Class class) 

was ist richtig und was der Compiler erwartet.

Die Lösung:

Ersetzen

 Intent i = new Intent(this, MrsClubb.class); 

mit

 Intent i = new Intent(MyActivity.this, MrsClubb.class); 

MyActivity ist der Name der Activity , zu der dieser Code gehört.