Android片段意图按钮下一个活动

时间:2014-11-21 06:44:20

标签: android-intent

我有强制关闭,我在清单

中注册了SecondActivity

公共类MainActivity扩展了Fragment {

@Override
public View onCreateView(LayoutInflater inflater,
        @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    View view=inflater.inflate(R.layout.activity_main, container,false);
    Button mButton=(Button) view.findViewById(R.id.button1);
    mButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent mIntent=new Intent(getActivity(),SecondActivity.class);
            getActivity().startActivity(mIntent);
}
    });
    return view;   
}
}

logcat的

11-21 17:25:03.277:D / AndroidRuntime(382):关闭虚拟机 11-21 17:25:03.277:W / dalvikvm(382):threadid = 1:线程退出未捕获异常(组= 0x4001d800) 11-21 17:25:03.297:E / AndroidRuntime(382):致命异常:主要 11-21 17:25:03.297:E / AndroidRuntime(382):java.lang.RuntimeException:无法实例化活动ComponentInfo {com.example.star/com.example.star.MainActivity}:java.lang.ClassCastException:com .example.star.MainActivity 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread.access $ 2300(ActivityThread.java:125) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2033) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.os.Handler.dispatchMessage(Handler.java:99) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.os.Looper.loop(Looper.java:123) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread.main(ActivityThread.java:4627) 11-21 17:25:03.297:E / AndroidRuntime(382):at java.lang.reflect.Method.invokeNative(Native Method) 11-21 17:25:03.297:E / AndroidRuntime(382):at java.lang.reflect.Method.invoke(Method.java:521) 11-21 17:25:03.297:E / AndroidRuntime(382):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868) 11-21 17:25:03.297:E / AndroidRuntime(382):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 11-21 17:25:03.297:E / AndroidRuntime(382):at dalvik.system.NativeStart.main(Native Method) 11-21 17:25:03.297:E / AndroidRuntime(382):引起:java.lang.ClassCastException:com.example.star.MainActivity 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.Instrumentation.newActivity(Instrumentation.java:1021) 11-21 17:25:03.297:E / AndroidRuntime(382):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577) 11-21 17:25:03.297:E / AndroidRuntime(382):... 11 more

2 个答案:

答案 0 :(得分:0)

请注意:公共类MainActivity扩展片段

它是一个片段,而不是一个活动。因此,如果您将其作为一个活动来处理,它会严重失败,对于instamce,因为它是一个片段,您不应该在AndroidManifest.xml中声明它。将其更改为活动,或创建包含此片段的新活动。

答案 1 :(得分:-1)

该例外明确表示无法找到班级com.example.new2.MainActivity

好像您已将活动类的名称从MainActivity更改为Activitymain,但未在Manifest.xml文件中更新相同内容。