【发布时间】:2015-03-26 14:42:15
【问题描述】:
我正在尝试使用
从活动中打开片段 buttonreturn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Chapter1Activity.this, Chapter1.class);
startActivity(intent);
Chapter1 是我试图访问的片段 但是每当我按下使其打开的按钮时,应用程序就会崩溃。 有什么想法吗?
编辑
日志猫:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.boszcorp.revappbiology/com.boszcorp.revappbiology.FooFragment}: java.lang.ClassCastException: com.boszcorp.revappbiology.FooFragment cannot be cast to android.app.Activity
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2240)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2391)
at android.app.ActivityThread.access$900(ActivityThread.java:147)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1296)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5256)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
Caused by: java.lang.ClassCastException: com.boszcorp.revappbiology.FooFragment cannot be cast to android.app.Activity
at android.app.Instrumentation.newActivity(Instrumentation.java:1065)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2230)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2391)
at android.app.ActivityThread.access$900(ActivityThread.java:147)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1296)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5256)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
【问题讨论】:
-
在 LogCat 中查找消息。如果你理解它们,问题就解决了。如果您不理解他们,请编辑您的问题以包含 LogCat 输出。
-
如果您发布您的 logcat,您可能会想出一个主意...
-
您不必使用 Intent 从活动传递到片段,而是使用 FragmentManager 和 FragmentTransaction
-
您将无法直接从意图开始片段。使用片段管理器或调用包含此特定片段的活动。
标签: android android-intent android-fragments android-activity