I'm working on a project where I want to add Pageviewer in the bottom notification bar's one fragment. I'm referring https://youtu.be/R_AIUy7tFVA - a YouTube video.
But I'm getting an error, please help.
Slider Adapter Code:
public class SliderAdapter extends PagerAdapter {
public SliderAdapter(Context context){
this.context = context;
}
Context context;
LayoutInflater layoutInflater;
public int[] events_img = {
R.drawable.delhievnt,
R.drawable.img2,
R.drawable.img1
};
public String[] event_titles = {
"Event 1", "Event 2", "Event 3"
};
public String[] event_details = {
"This is event 1 description",
"This is event 2 description",
"This is event 3 description"
};
public int[] events_bgcolor = {
Color.rgb(55,55,55),
Color.rgb(239,85,85),
Color.rgb(1,188,212)
};
@Override
public int getCount() {
return event_titles.length;
}
@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object o) {
return (view == (LinearLayout)o);
}
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
layoutInflater = (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
View view = layoutInflater.inflate(R.layout.slides_viewpager, container, false);
LinearLayout layout = (LinearLayout) view.findViewById(R.id.slider_layout);
ImageView imageView = view.findViewById(R.id.slider_img);
TextView tvtitle = view.findViewById(R.id.title_slider);
TextView tvdetails = view.findViewById(R.id.detail_slider);
layout.setBackgroundColor(events_bgcolor[position]);
imageView.setImageResource(events_img[position]);
tvtitle.setText(event_titles[position]);
tvdetails.setText(event_details[position]);
container.addView(view);
return view;
}
@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((LinearLayout)object);
}
}
Event Fragment Code
public class EventFragment extends Fragment {
private ViewPager viewPager;
private SliderAdapter sliderAdapter;
public EventFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
viewPager = (ViewPager) getView().findViewById(R.id.slider_layout);
sliderAdapter = new SliderAdapter(this);
viewPager.setAdapter(sliderAdapter);
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_event, container, false);
}
Getting error in sliderAdapter = new SliderAdapter(this);
this line.
When I use getActivity() in place of this app is crashing