Boa noite!
Estou usando um menu lateral (drawer), cada componente chama um activity. Exemplo, o componente “cliente” chama um Tablayout, e ouclicar novamente no componente “cliente” todos os itens some. Coloquei um Log, e percebi que ele não está criando novamente o fragment.
Fragment do cliente. Nesse onResume ele para e não cria mais nada.
public class ClienteFragment extends Fragment {
View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflando o layout para este fragment
view = inflater.inflate(R.layout.fragment_cliente, container, false);
TabLayout tl = (TabLayout) view.findViewById(R.id.tab_layout);
ViewPager vp = (ViewPager) view.findViewById(R.id.view_pager);
vp.setAdapter(new MyFragPagerAdapter(getFragmentManager(), getResources().getStringArray(R.array.titles_tab)));
tl.setupWithViewPager(vp);
return view;
}
@Override
public void onResume() {
super.onResume();
Log.i("Log", "onResume");
TabLayout tl = (TabLayout) view.findViewById(R.id.tab_layout);
ViewPager vp = (ViewPager) view.findViewById(R.id.view_pager);
vp.setAdapter(new MyFragPagerAdapter(getFragmentManager(), getResources().getStringArray(R.array.titles_tab)));
tl.setupWithViewPager(vp);
}
@Override
public void onStart() {
super.onStart();
Log.i("Log", "onStart");
}
@Override
public void onStop() {
super.onStop();
Log.i("Log", "onStop");
}
@Override
public void onPause() {
super.onPause();
Log.i("Log", "onPause");
}
@Override
public void onDestroy() {
super.onDestroy();
Log.i("Log", "onDestroy");
}
}
Aqui é o método da activity principal onde chamo o fragment do cliente
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// itens do menu lateral click
int id = item.getItemId();
String title = null;
if (id == R.id.nav_inicio) {
// Handle the camera action
Log.i("Log", "inicio");
} else if (id == R.id.nav_cliente) {
fragment = getSupportFragmentManager().beginTransaction();
fragment.replace(R.id.container_body, new ClienteFragment());
title = "Cliente";
getSupportActionBar().setTitle(title);
fragment.commit();
} else if (id == R.id.nav_pedido) {
} else if (id == R.id.nav_pedido) {
} else if (id == R.id.nav_sair) {
finish();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
Obrigado pela atenção!