2014-12-13 7 views
1

Я новичок в программировании на Android и Java, и я получаю ActivityNotFoundException в своем приложении.Android: ActivityNotFoundException

Вот только эти два раза активность называется:

public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
      // TODO Auto-generated method stub 
      String selectedItem = (String) lvCheckLists.getItemAtPosition(position); 

      Intent i= new Intent("com.teamvdb.checklist.checkListActivity"); 
      // Package name and activity 
      // Intent i= new Intent(MainActivity.this,SecondActivity.Class); 
      // Explicit intents 
      i.putExtra("selectedItem",selectedItem); 
      // Parameter 1 is the key 
      // Parameter 2 is your value 
      startActivity(i); 

      Intent openCheckListActivity = new ntent("com.teamvdb.checklist.checkListActivity"); 
      startActivity(openCheckListActivity); 

     } 
    }); 
} 

И тут мой Android Manifest:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.teamvdb.checklist" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk 
    android:minSdkVersion="11" 
    android:targetSdkVersion="21" /> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 

    <activity android:name=".MainActivity" 
    android:label="@string/app_name"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 

    </intent-filter> 
</activity> 
    <activity android:name=".checkListActivity" 
    android:label="@string/app_name"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.MAIN" /> 

    </intent-filter> 
</activity> 
</application> 
</manifest> 

Я провел последние 20 минут, пытаясь выяснить, что это неправильно, но я не вижу проблемы. И да, класс правильно написан.

+0

Замечание: В Java имена классов всегда должны начинаться с прописной буквы, поэтому лучше использовать CheckListActivity – Ridcully

+0

Избавиться от этого блока '' в декларации манифеста checkListActivity и использовать подход в ответ от Хареша Хелана. – Squonk

ответ

1

Явное начать checkListActivity:

public void onItemClick(AdapterView<?> parent, View view,int position, long id) { 
    String selectedItem = (String) lvCheckLists.getItemAtPosition(position); 
    Intent i= new Intent(MainActivity.this,checkListActivity.class); 
    i.putExtra("selectedItem",selectedItem); 
    startActivity(i); 
}); 

намеренных фильтр не требуется checkListActivity поэтому удалить его и определить, как простой в AndroidManifest.xml:

<activity android:name=".checkListActivity"/> 

Примечание: Удалить unneccsary код, начать checkListActivity снова.