I am new in programming under androyd, and I have the following problem: I use the navigation drawer, when I select an item in the menu, I change the fragment. In the layout of the fragment, which I load when I click on a menu item. I have a button and a listview. And in the fragment class I have this code:
public class InboxFragment extends Fragment{ private ListView ll; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.inbox_fragment, container, false); } public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Button filter_bt; // Краш происходит здесь filter_bt = (Button) getView().findViewById(R.id.filter_button); filter_bt.setOnClickListener((OnClickListener) this); } } The code is nowhere easier, but for some reason my application crashes. Why does this happen if there is a button? Error - NullPointerException, something returns zero. But what and why?
Here are some bugs:
FATAL EXCEPTION: main java.lang.NullPointerException at com.example.android.navigationdrawerexample.InboxFragment.onCreate(InboxFragment.java:29) at android.app.Fragment.performCreate(Fragment.java:1673) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:872) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1075) at android.app.BackStackRecord.run(BackStackRecord.java:682) at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1455) at android.app.FragmentManagerImpl$1.run(FragmentManager.java:441) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5306) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) at dalvik.system.NativeStart.main(Native Method)
NullPointerExceptionoccurs when you try to call an object method on an uninitialized reference. Crash on the 29th line in theonCreatemethod. If it is filter_bt = (Button) getView (). FindViewById (R.id.filter_button); then probablygetView()returnsnull. - Nofate ♦onCreateis called beforeonCreateView. - falstaf