私はAndroidにはかなり新しく、フラグメントを使用することを学んでいます。 BottomNavigationビューの特定のタブが選択されたときにTextviewを表示するフラグメントを作成しました。私はこのようなフラグメントを開く:「ワークアウト」ボタンは、このようなように選択されたときにフラグメントが読み込まれていて、アクティビティから呼び出すときに読み込まない
public void switchToWorkoutFragment() {
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.content, new
ListFragment()).commit();
}
は、それから私は、この関数を呼び出す:
private BottomNavigationView.OnNavigationItemSelectedListener
mOnNavigationItemSelectedListener
= new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.navigation_home:
mTextMessage.setText("Stats Fragment");
return true;
case R.id.navigation_dashboard:
mTextMessage.setText("Workout Fragment");
switchToWorkoutFragment();
return true;
case R.id.navigation_notifications:
mTextMessage.setText("Goals Fragment");
return true;
}
return false;
}
};
私はワークアウトボタンを押すと、フラグメントはちょうどありませんロードしたい。それは回転アイコンと一緒に無期限に座り、何もロードしません。なぜ私はそれがそれを行うだろうか分からない、ロードするためにそこに多くのものがない(私が言ったように、それは単なるテキストビューです)
うん、それは中のonCreateメソッドで設定されます:だから、このような何かを行うことができますMainActivity } –
ListFragmentの代わりにFrameLayoutまたはFragmentLayoutにします。 – Shmuel