/**i'm using android.support.v4.view.ViewPager with tabhost for show a tab data, i have 3 tab when first time it is load 1st tab is load 3rd tab data ...3rd tab is load 1st tab data .and 2nd tab is correctly loads own data
My Code For viewpager and tabhost is Thx in Advance **/
private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private String[] tabsTitles = {"SELL", "RENT", "PROJECT"};
viewPager = (ViewPager) findViewById(R.id.pager);
mAdapter = new TabsPagerAdapter(getSupportFragmentManager(), tabsTitles.length);
viewPager.setAdapter(mAdapter);
final TabHost tabHost=(TabHost)findViewById(android.R.id.tabhost);
tabHost.setup();
for (int i = 0; i < tabsTitles.length; i++) {
String tabName = tabsTitles[i];
TabHost.TabSpec spec=tabHost.newTabSpec(tabName);
spec.setContent(R.id.fakeTabContent);
spec.setIndicator(tabName);
tabHost.addTab(spec);
}
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
@Override
public void onTabChanged(String tabId) {
for (int i = 0; i < tabsTitles.length; i++) {
if (tabId.equals(tabsTitles[i])) {
viewPager.setCurrentItem(i);
break;
}
}
}
});
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
Toast.makeText(getApplicationContext(), String.valueOf(position), Toast.LENGTH_LONG).show();
tabHost.setCurrentTab(position);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
There was a issue in the adapter code
public Fragment getItem(int index) {
switch (index % 3) {
case 2: // Top Rated fragment activity return
new ProjectFragment();
case 1: // Games fragment activity
return new RentFragment();
case 0: // Movies fragment activity
return new SellFragment();
} return null;
}