tabs are not swipping in android



My app crashes when i try to use the set Current Item(arg0.get Position()) in on Tab selected method while implement a the functionality that i click on tabs the fragments below should also change with it..... it works the other way around that is when i swipe, Tabs changes with it. Any kind of help will be appreciable.. thanks in advance. the code is given below:



@TargetApi(Build.VERSION_CODES.HONEYCOMB)


public class AboutUs extends FragmentActivity implements TabListener {



private ActionBar actionBar;
ViewPager viewPager;

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.aboutus);
intialization();

}

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private void intialization() {
// TODO Auto-generated method stub

actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

ActionBar.Tab tab1 = actionBar.newTab();
tab1.setText("MUMTAZ ANWAR");
tab1.setTabListener(this);

ActionBar.Tab tab2 = actionBar.newTab();
tab2.setText("CREDIENTIALS");
tab2.setTabListener(this);

actionBar.addTab(tab1);
actionBar.addTab(tab2);

viewPager = (ViewPager) findViewById(R.id.pagger);
viewPager.setAdapter(new MyAdapter(getSupportFragmentManager()));
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
actionBar.setSelectedNavigationItem(arg0);
}

@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

}
});

}

@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
//Log.d("HAMZA", "onTabReselected at " + "position" + tab.getPosition()
// + "name" + tab.getText());
}

@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
//Log.d("HAMZA", "onTabselected at " + "position" + tab.getPosition()
// + "name" + tab.getText());
viewPager.setCurrentItem(tab.getPosition());
}

@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
//Log.d("HAMZA", "onTabUnselected at " + "position" + tab.getPosition()
// + "name" + tab.getText());
}


}


class MyAdapter extends FragmentPagerAdapter {



public MyAdapter(FragmentManager fm) {
super(fm);
// TODO Auto-generated constructor stub
}

@Override
public Fragment getItem(int arg0) {
// TODO Auto-generated method stub

Fragment fragment = null;
if (arg0 == 0) {

fragment = new BlankFragment();
}

if (arg0 == 1) {

fragment = new BlankFragmenta();
}

return fragment;
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return 2;
}


}


No comments:

Post a Comment