ViewPager does not show anything

Please advice. I can not get ViewPager to work. That's what I'm doing:

1) This is my LinearLayout in which I will put the ViewPager. I'm sure it works. I can put any kind into it:

<LinearLayout android:id="@+id/view_contact_values_container" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/view_contact_sub_nav" android:orientation="vertical" android:paddingLeft="10dip" > </LinearLayout> 

2) Next, I create a ViewPager in code:

 private void createViewPager() { ViewPager viewPager = new ViewPager(this); DatesPagerAdapter datesPagerAdapter = new DatesPagerAdapter(this); viewPager.setAdapter(datesPagerAdapter); viewPager.setCurrentItem(1); llContainer.addView(viewPager); } 

3) And ViewPagerAdapter (PagerAdapter):

 @Override public Object instantiateItem(ViewGroup container, int position) { LayoutInflater inflater = (LayoutInflater) container.getContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View v = inflater.inflate(R.layout.dates_carusel_item, null); ((ViewPager) container).addView(v, 0); return v; } @Override public int getCount(){ return 5; } 

But when I open my activity, nothing is displayed in my LinearLayout. PS: Sorry for the bad question. The tag code in this editor is strange.

+4
source share
1 answer

Take a Class Extending Fragemnt

 class ExampleFragment extends Fragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { View v = inflater.inflate(R.layout.dates_carusel_item, null); return v; } 

And in your PagerAdapter do it

  private class DatesPagerAdapter extends FragmentPagerAdapter { public DatesPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int arg0) { ExampleFragment fragment=new ExampleFragment(); Bundle bundle=new Bunlde(); //put bundle data here fragment.setArguments(bundle); return fragment; } @Override public int getCount() { 5; } } 

Regardless of which view you want to set, make it in the example fragment and add your viewPager

 ViewPager pager=new ViewPager(this); pager.setAdapter(new DatesPagerAdapter); llContainer.addView(pager) 

Add your ViewPager to the xml itself so that it is properly bound, otherwise you can set LayoutParams at runtime if its visibility error

  android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:layout_below="@id/view_contact_sub_nav"android:id="+id/view_contact_values_container" android:paddingLeft="10dip"> <android.support.v4.view.ViewPager android:id="@+id/imagesgallery" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> 
0
source

All Articles