Here is my OncreateView
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.contact_detail, container,
false);
return view;
}
And here's my OnCreate in MainActivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (findViewById(R.id.fragment_container) != null) {
if (savedInstanceState != null) {
return;
}
// getOverflowMenu();
// Create an Instance of Fragment
AddContactFragment fragment = new AddContactFragment();
fragment.setArguments(getIntent().getExtras());
fragment.getFragmentManager().beginTransaction()
.add(R.id.fragment_container, fragment).commit();
}
Stack Trace:
03-22 14:16:36.265: E/AndroidRuntime(851): FATAL EXCEPTION: main
03-22 14:16:36.265: E/AndroidRuntime(851): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.finalprojectaddcontact/com.example.finalprojectaddcontact.MainActivity}: java.lang.NullPointerException
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.os.Handler.dispatchMessage(Handler.java:99)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.os.Looper.loop(Looper.java:137)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread.main(ActivityThread.java:5041)
03-22 14:16:36.265: E/AndroidRuntime(851): at java.lang.reflect.Method.invokeNative(Native Method)
03-22 14:16:36.265: E/AndroidRuntime(851): at java.lang.reflect.Method.invoke(Method.java:511)
03-22 14:16:36.265: E/AndroidRuntime(851): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-22 14:16:36.265: E/AndroidRuntime(851): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-22 14:16:36.265: E/AndroidRuntime(851): at dalvik.system.NativeStart.main(Native Method)
03-22 14:16:36.265: E/AndroidRuntime(851): Caused by: java.lang.NullPointerException
03-22 14:16:36.265: E/AndroidRuntime(851): at com.example.finalprojectaddcontact.MainActivity.onCreate(MainActivity.java:31)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.Activity.performCreate(Activity.java:5104)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
03-22 14:16:36.265: E/AndroidRuntime(851): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
03-22 14:16:36.265: E/AndroidRuntime(851): ... 11 more
Shouldn't you call getFragmentManager()
on the Activity, not the fragment?
instead of fragment.getFragmentManager().beginTransaction()
try calling getFragmentManager().beginTransaction()
API reference: https://developer.android.com/reference/android/app/Activity.html#getFragmentManager()