我正在尝试从activity
打开Listfragment
,如下所示
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
((MenuActivity)getActivity()).getSlideoutHelper().close();
Intent myIntent = new Intent(getActivity(), TravellerTimer.class);
getActivity().startActivity(myIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY));
}
我在清单文件中注册了TimeTraveller
个活动,但仍然提供了ActivityNotFoundException
以下是我的日志跟踪
04-19 17:14:00.030: E/AndroidRuntime(12188): FATAL EXCEPTION: main
04-19 17:14:00.030: E/AndroidRuntime(12188): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.vpiabstest/com.example.activity.TravellerTimer}; have you declared this activity in your AndroidManifest.xml?
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1556)
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1431)
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.app.Activity.startActivityForResult(Activity.java:3446)
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.app.Activity.startActivityForResult(Activity.java:3407)
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:674)
04-19 17:14:00.030: E/AndroidRuntime(12188): at android.app.Activity.startActivity(Activity.java:3617)
下面是我的清单文件
< application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<receiver android:name=".service.ActivityService" />
<receiver
android:name=".service.StartupService"
android:enabled="true"
android:exported="false" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<activity android:name="SampleActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MenuActivity"
android:label="@string/app_name"
android:theme="@style/MenuTheme" >
</activity>
<activity
android:name=".VpiAbsTestActivity"
android:theme="@style/Theme.VPI" />
<activity
android:name="com.example.activity.CreateTimer"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.example.activity.EditTimer"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.example.activity.FakeCall"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.example.activity.ContactList"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.example.activity.TravellerTimer"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.example.activity.TimerPrefrence"
android:configChanges="keyboardHidden|orientation|screenSize" />
< /application>
感谢任何帮助。感谢
答案 0 :(得分:3)
确保您已在清单
中注册了包含完整正确包裹名称的活动答案 1 :(得分:0)
使用'this'关键字尝试当前的类对象,以在intent参数中调用您的活动。
Intent myIntent = new Intent(this.Urcurrentactivity, TravellerTimer.class); this.Urcurrentactivity.startActivity(myIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY));
您的代码也应该有效,但只是看到这个引号,我无法确定。
答案 2 :(得分:0)
通过在PasteBin中查看您的代码:
ArrayList<ActiveTimer> timerLists = new ArrayList<ActiveTimer>();
timerLists = ((TimerPrefrence) getApplication()).viewTimer();
您正在尝试将TimerPrefrence转换为ActiveTimer ArrayList。这就是你获得Class cast异常的原因。