AndroidImageSlider icon indicating copy to clipboard operation
AndroidImageSlider copied to clipboard

Fragment Implementation

Open AbrahamMC opened this issue 8 years ago • 4 comments

I have an Issue, I cant use this on a fragment, I really like how it looks on a regular activity but also would like to implement it on my fragments. This is what I get.

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.daimajia.slider.library.SliderLayout.addSlider(com.daimajia.slider.library.SliderTypes.BaseSliderView)' on a null object reference

public void startSlider(){ Context contextSl = getActivity().getApplicationContext(); //Set the slider for header images----------------------------------------------------------------------------------Abe Cruz url_maps = new HashMap<String, String>(); url_maps.put("Hannibal", "http://static2.hypable.com/wp-content/uploads/2013/12/hannibal-season-2-release-date.jpg"); url_maps.put("Big Bang Theory", "http://tvfiles.alphacoders.com/100/hdclearart-10.png"); url_maps.put("House of Cards", "http://cdn3.nflximg.net/images/3093/2043093.jpg"); url_maps.put("Game of Thrones", "http://images.boomsbeat.com/data/images/full/19640/game-of-thrones-season-4-jpg.jpg");

    for(String name : url_maps.keySet()){
        TextSliderView textSliderView = new TextSliderView(contextSl);
        // initialize a SliderLayout
        textSliderView
                .description(name)
                .image(url_maps.get(name))
                .setScaleType(BaseSliderView.ScaleType.Fit)
                .setOnSliderClickListener((BaseSliderView.OnSliderClickListener) contextSl);

        //add extra information
        textSliderView.bundle(new Bundle());
        textSliderView.getBundle().putString("extra",name);
        mSlider.addSlider(textSliderView);
    }
    mSlider.setPresetTransformer(SliderLayout.Transformer.FlipPage);
    mSlider.setPresetIndicator(SliderLayout.PresetIndicators.Center_Bottom);
    mSlider.setCustomAnimation(new DescriptionAnimation());
    mSlider.setDuration(4000);
    mSlider.addOnPageChangeListener((ViewPagerEx.OnPageChangeListener) contextSl);
    //Set the slider for header images----------------------------------------------------------------------------------Abe Cruz
}

AbrahamMC avatar Mar 07 '17 19:03 AbrahamMC

change your code.. TextSliderView textSliderView = new TextSliderView(getActivity());

on addOnPageChangeListner sliderLayout.addOnPageChangeListener(MYFRAGMENT.this);

and make sure your fragment implements BaseSliderView.OnSliderClickListener, ViewPagerEx.OnPageChangeListener

keithics avatar Apr 07 '17 20:04 keithics

I faced the same issue , even my fragment implements the BaseSliderView.OnSliderClickListener ,ViewPagerEx.OnPageChangeListener here's my code >> private void sliderSetup(List sponsored) { try { for (int i = 0; i < sponsored.size(); i++) { TextSliderView sliderView = new TextSliderView(this.getActivity()); sliderView.image(sponsored.get(i)) .setScaleType(BaseSliderView.ScaleType.FitCenterCrop); mSponsoredSlider.addSlider(sliderView); } mSponsoredSlider.setPresetTransformer(SliderLayout.Transformer.Accordion); mSponsoredSlider.setPresetIndicator(SliderLayout.PresetIndicators.Center_Bottom); mSponsoredSlider.setTextAlignment(View.TEXT_ALIGNMENT_CENTER); mSponsoredSlider.canResolveTextAlignment(); mSponsoredSlider.setSoundEffectsEnabled(true); mSponsoredSlider.setCustomAnimation(new DescriptionAnimation()); mSponsoredSlider.setDuration(4000); mSponsoredSlider.addOnPageChangeListener(FragmentHome.this); } catch (Exception e) { e.printStackTrace(); }

} @override public void onSliderClick(BaseSliderView slider) {

}

@Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

}

@Override public void onPageSelected(int position) {

}

@Override public void onPageScrollStateChanged(int state) {

}

MoaazElneshawy avatar Jan 25 '18 17:01 MoaazElneshawy

I faced the same issue. I used ButterKnife, I fixed by adding ButterKnife.bind(this, rootview). I think this happened bc your slider is null, not your sliderview. So check it carefully.

bnkhoi avatar Jun 25 '18 11:06 bnkhoi

change your code.. TextSliderView textSliderView = new TextSliderView(getActivity());

on addOnPageChangeListner sliderLayout.addOnPageChangeListener(MYFRAGMENT.this);

and make sure your fragment implements BaseSliderView.OnSliderClickListener, ViewPagerEx.OnPageChangeListener

thanks dude

auliarahmed avatar Mar 31 '19 10:03 auliarahmed