Я начинаю изучать android, и у меня возникает эта проблема:
При первом (только первом) запуске моего приложения отображается только Activity_main. У него есть панель навигации, но она пуста.
Мое приложение предназначено для аудиокниг. Имеются разделы «Последние аудиокниги», «Избранные аудиокниги», «Сохраненные аудиокниги», «Все аудиокниги». При первом запуске все они пусты.
Приведенный ниже код удалил все, что не относится к макету:
public class MainActivity extends AppCompatActivity {
public static SQLiteHelper sqLiteHelper;
private Fragment selectedFragment = new BooksLastFragment();
@RequiresApi(api = Build.VERSION_CODES.M)
@Override
protected void onCreate(Bundle savedInstanceState) {
final int REQUEST_CODE_PERMISSION = 1;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
if (toolbar != null) {
setSupportActionBar(toolbar);
assert getSupportActionBar() != null;
getSupportActionBar().setDisplayShowTitleEnabled(false);
}
BottomNavigationView navigation = findViewById(R.id.navigation); navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, new BooksLastFragment()).commit();}
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
= item -> {
switch (item.getItemId()) {
case R.id.nav_last:
selectedFragment = new BooksLastFragment();
break;
case R.id.nav_favourites:
selectedFragment = new BooksFavouritesFragment();
break;
case R.id.nav_all:
selectedFragment = new BooksAllFragment();
break;
case R.id.nav_remote:
selectedFragment = new GenresFragment();
break;
default:
break;
}
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();
return true;
};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.toolbar, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
DialogFragment dialogAbout;
switch (item.getItemId()) {
case R.id.action_about:
dialogAbout = new AboutFragment();
dialogAbout.show(getSupportFragmentManager(), "dialogAbout");
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}}}
Изображение:
Первый запуск -
После перезагрузки -
Извините за плохой английский и плохой код