Android: Nicht zu ersetzen fragment in viewpager
Hallo, ich bin versucht, dies für 2 Wochen und immer noch nicht in der Lage zu ersetzen, die ein fragment mit einer anderen im viewpager. Ich habe drei Fragmente, die als Registerkarten im viewpager ,wenn ich auf einen button in das erste fragment , die ich ersetzen will, die firstfragment mit fourthfragment. Iam tut unten aber es funktioniert nicht
productDetailFragment = new PlaceSearchFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.addToBackStack("fh");
transaction.replace(R.id.maincontainer,productDetailFragment,"yourfragment").commit();
Unten ist meine MainActivity mit viewpager
public class MainActivity extends FragmentActivity implements
ActionBar.TabListener {
private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;
//Tab titles
private String[] tabs = { "New", "Recent", "All" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Initilization
viewPager = (ViewPager) findViewById(R.id.pager);
actionBar = getActionBar();
mAdapter = new TabsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
//Adding Tabs
for (String tab_name : tabs) {
actionBar.addTab(actionBar.newTab().setText(tab_name)
.setTabListener(this));
}
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
//on changing the page
//make respected tab selected
actionBar.setSelectedNavigationItem(position);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
//on tab selected
//show respected fragment view
viewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
}
}}
Unten ist mein Fragmentpageadapter
public class TabsPagerAdapter extends FragmentPagerAdapter {
public TabsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
//Top Rated fragment activity
return new GetRideFragment();
case 1:
//Games fragment activity
return new PostRideFragment();
case 2:
//Movies fragment activity
return new SearchRidesFragment();
}
return null;
}
@Override
public int getCount() {
//get item count - equal to number of tabs
return 3;
}
}
viel gesucht und versucht, verschiedene Möglichkeiten, aber ich bin nicht in der Lage, damit es funktioniert.Eine etwaige be-Beispiel oder eine Lösung für dieses wird sehr hilfreich sein.Jede Hilfe wird sehr geschätzt
- hast du eine Antwort dafür????
- Sind Sie in der Lage, dieses Problem zu beheben?
- Haben Sie dieses Problem behoben?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, dass diese Frage ist alt, aber es ist nicht markiert als beantwortet oder gelöst, hier ist eine Andeutung: Sie haben versucht, die Einstellung der navigation Ihrer Aktionsleiste, um NAVIGATION_MODE_TABS?