Android ViewPager和NullObjectReference错误
我在设置ViewPager的适配器时遇到问题。每次我得到一个NullObjectReference错误。我的代码怎么了 1) 布局:Android ViewPager和NullObjectReference错误,android,android-layout,android-fragments,android-viewpager,android-adapter,Android,Android Layout,Android Fragments,Android Viewpager,Android Adapter,我在设置ViewPager的适配器时遇到问题。每次我得到一个NullObjectReference错误。我的代码怎么了 1) 布局: 调用viewPager.setAdapter(pagerAdapter)时,我总是会遇到这个错误;行。原因是您的onCreateView。在fragment中,首先需要为fragment膨胀视图,然后从该视图中查找dviewbyd。 您可能会看到以下示例: @Nullable @Override public View onCreateView(LayoutInf
调用viewPager.setAdapter(pagerAdapter)时,我总是会遇到这个错误;行。原因是您的onCreateView。在fragment中,首先需要为fragment膨胀视图,然后从该视图中查找dviewbyd。 您可能会看到以下示例:
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_food, container, false);
// get your view by: rootView.findViewById()
// for example:
viewPager = (ViewPager) rootView.findViewById(R.id.view_pager);
// do others...
return rootView;
}
public class FoodFragment extends Fragment {
Toolbar toolbar;
ViewPager viewPager;
TabsPagerAdapter pagerAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
setRetainInstance(true);
((AppCompatActivity)getActivity())
.getSupportActionBar().setDisplayShowTitleEnabled(true);
((AppCompatActivity)getActivity())
.getSupportActionBar().setTitle(R.string.food);
toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar);
toolbar.setBackgroundColor(Color.parseColor("#f6a632"));
pagerAdapter = new TabsPagerAdapter(getActivity()
.getSupportFragmentManager());
viewPager = (ViewPager) getActivity().findViewById(R.id.view_pager);
viewPager.setAdapter(pagerAdapter);
return inflater.inflate(R.layout.fragment_food, container, false);
}
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_food, container, false);
// get your view by: rootView.findViewById()
// for example:
viewPager = (ViewPager) rootView.findViewById(R.id.view_pager);
// do others...
return rootView;
}