Skip to content

Java usage

Vijay Makwana edited this page Feb 20, 2018 · 5 revisions

Here BR.item is the Binding Resource variable which you declared in your layout

  • simple pager

    new EasyPagerAdapter(mImageList, BR.item)
            .map(ImageModel.class, R.layout.item_view_pager_image)
            .into(mBinding.viewPager);
  • if need onClicks

    new EasyPagerAdapter(mImageList, BR.item)
            .map(ImageModel.class, R.layout.item_view_pager_image, 
      	  new PagerCallBack<ItemViewPagerImageBinding>() {
                @Override
                public void onBind(final ItemViewPagerImageBinding itemBind) {
                    itemBind.textImage.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                       /* here itemBind is your layout binding instance 
                       *with the help of you can get all the layout components
                       */
                            Toast.makeText(JavaDemoActivity.this,
                            itemBind.getItem().getName(),
                            Toast.LENGTH_SHORT).show();
                        }
                    });
                }
            })
            .into(mBinding.viewPager);
  • data variable in different layout with same name

    new EasyPagerAdapter(mPageList, BR.item)
            .map(ImageModel.class, R.layout.item_view_pager_image)
            .map(PersonDetail.class, R.layout.item_view_pager_person_detail_item)
            .into(mBinding.viewPager);
  • data variable in different layout with different name

    new EasyPagerAdapter(mPageList)
            .map(ImageModel.class, R.layout.item_view_pager_image, BR.item)
            .map(PersonDetail.class, R.layout.item_view_pager_person_detail, BR.person)
            .into(mBinding.viewPager);
  • different layouts with onClicks

    new EasyPagerAdapter(mPageList)
            .map(ImageModel.class, R.layout.item_view_pager_image, BR.item)
            .map(PersonDetail.class,
             R.layout.item_view_pager_person_detail,
             BR.person, new PagerCallBack<ItemViewPagerPersonDetailBinding>() {
                @Override
                 public void onBind(final ItemViewPagerPersonDetailBinding itemBind) {
                    itemBind.btnSubmit.setOnClickListener(new View.OnClickListener() {
                       @Override
                        public void onClick(View view) {
                         Toast.makeText(JavaDemoActivity.this,
    	"Submit Button Clicked in the Person " + itemBind.getPerson().getName() +
    		" Page", Toast.LENGTH_LONG).show();
                                }
                            });
                        }
                    })
            .into(mBinding.viewPager);
  • with ItemType

    ItemType<ItemViewPagerPersonDetailBinding> itemPersonType = new ItemType<>
            (R.layout.item_view_pager_person_detail, 
      	  new PagerCallBack<ItemViewPagerPersonDetailBinding>() {
                @Override
                public void onBind(final ItemViewPagerPersonDetailBinding itemBind) {
                    itemBind.btnSubmit.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            Toast.makeText(JavaDemoActivity.this,
    				"Submit Button Clicked in the Person " + 
    				itemBind.getPerson().getName() +
    				" Page", Toast.LENGTH_LONG).show();
                        }
                    });
                }
            });
    
    new EasyPagerAdapter(mPageList, BR.item)
            .map(ImageModel.class, R.layout.item_view_pager_image)
            .map(PersonDetail.class, itemPersonType, BR.person)
            .into(mBinding.viewPager);
  • other methods

  1. pageTitle(pageTitleList) want to add page title
  2. pageWidth(1.0F) want to change page width
  • set fragment pager adapter
new EasyFragmentPagerAdapter(supportFragmentManager, 
arrayListOf(FragmentA(), FragmentB())).into(mBinding.viewPager);
  • set fragment state pager adapter
new EasyFragmentStatePagerAdapter(supportFragmentManager, 
arrayListOf(FragmentA(), FragmentB())).into(mBinding.viewPager);
Clone this wiki locally