[英]Fragment replacing does not work
我有一個正常工作的BottomMenu。 問題是,如果我想通過Buttonclick從那些菜單“片段”之一切換到新的Fragment(switchtoallstudies()方法),它將僅切換到空白處。 我怎樣才能解決這個問題?
public class Dashboard extends AppCompatActivity {
private TextView mTextMessage;
private AHBottomNavigation bottomNavigation;
private NoSwipePager viewPager;
private BottomBarAdapter pagerAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dashboard);
setupViewPager();
bottomNavigation = (AHBottomNavigation) findViewById(R.id.bottom_navigation);
addBottomNavigationItems();
setBottomNavigationStyle();
bottomNavigation.setCurrentItem(0);
bottomNavigation.setOnTabSelectedListener(new AHBottomNavigation.OnTabSelectedListener() {
@Override
public boolean onTabSelected (int position, boolean wasSelected) {
if (!wasSelected)
viewPager.setCurrentItem(position);
return true;
}
});
}
public void switchtoallstudies(){
//getAlllStudies
Frag_alle_studien fragallestudien = new Frag_alle_studien();
//start up fragment
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragdashcontainer, fragallestudien).commit();
}
private void setupViewPager() {
viewPager = (NoSwipePager) findViewById(R.id.fragdashcontainer);
viewPager.setPagingEnabled(false);
pagerAdapter = new BottomBarAdapter(getSupportFragmentManager());
pagerAdapter.addFragments(new Frag_Startseite());
pagerAdapter.addFragments(new Frag_Frageboegen());
pagerAdapter.addFragments(new Frag_Studien());
pagerAdapter.addFragments(new Frag_Ergebnisse());
pagerAdapter.addFragments(new Frag_Einstellungen());
viewPager.setAdapter(pagerAdapter);
}
謝謝
在注釋中提供的鏈接中,布局xml包含FrameLayout
看到代碼
在文章中也有提到
ID為++ id / frame的FrameLayout是用於加載Fragment的占位符UI。
再次從鏈接中閱讀您的文章!
建議始終使用框架布局作為容器來替換片段。 如果您不想徹底更改代碼,可以嘗試在ViewPager中以相同大小添加FrameLayout。 但是,如果仍然無法正常運行,我相信正確的方法是擺脫viewpager的影響,而只需替換在framelayolut容器內單擊的內容就可以了。 這是一篇出色的工作 文章的鏈接。 我自己用過的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.