O menu abre lentamente. Como poderia resolver ?
O menu abre lentamente. Como poderia resolver ?
Oi Felipe, tudo bem ?
É bem difícil mensurar o que tá rolando, você está tentando pelo emulador ou aparelho fisico ?
Oi Matheus, tudo certo?!
Estou tentando pelo aparelho físico mesmo.
Consegue mostrar pra gente como está seu código ?
Este o meu XML onde ficam os itens do menu.
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_produtos"
android:icon="@drawable/produtos"
android:title="Produtos" />
<item
android:id="@+id/nav_menu"
android:icon="@drawable/menu"
android:title="Categorias" />
<item
android:id="@+id/nav_lista"
android:icon="@drawable/lista"
android:title="Listas" />
<item
android:id="@+id/nav_cestavazia"
android:icon="@drawable/cestavazia"
android:title="Cesta" />
</group>
<item android:title="Outros">
<menu>
<item
android:id="@+id/nav_sobre"
android:icon="@drawable/informacao"
android:title="Sobre" />
<item
android:id="@+id/nav_sair"
android:icon="@drawable/sair"
android:title="Sair" />
</menu>
</item>
Aqui a parte do Java onde estao declarado os ids.
@Override public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.nav_produtos) {
Intent intent = new Intent(Produtos.this,Produtos.class);
startActivity(intent);
finish();
Toast.makeText(Produtos.this,"Produtos",Toast.LENGTH_SHORT ).show();
} else if (id == R.id.nav_menu) {
Intent intent = new Intent(Produtos.this,Categoria.class);
startActivity(intent);
finish();
} else if (id == R.id.nav_lista) {
} else if (id == R.id.nav_cestavazia) {
Intent intent = new Intent(Produtos.this,Cesta.class);
startActivity(intent);
finish();
}
else if (id == R.id.nav_sobre) {
Intent intent = new Intent(Produtos.this, Sobre.class);
startActivity(intent);
}
else if (id == R.id.nav_sair)
{
Intent intent = new Intent(Produtos.this,Login.class);
startActivity(intent);
finish();
SharedPreferences preferences =getSharedPreferences("user_preferences",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
editor.commit();
finish();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
Faz um teste bem idiota, troca esses ifs por switch
Modifiquei mas mesmo assim continua.
Teria que olhar o restante do código, por acaso está em algum github da vida?
Nao nenhum..
Consegue colocar pra gente poder te ajudar ?
Pode ser aqui mesmo? Parte especifica do codigo? A parte de codigo que relata o menu?
Sem vermos o código ficaremos nesse ping pong até pensarmos em algo...
Não consegue colocar pra gente entender como está e depois você tira ?
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN) @SuppressWarnings("StatementWithEmptyBody") @Override public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.nav_produtos) {
Intent intent = new Intent(Produtos.this, Produtos.class);
startActivity(intent);
finish();
Toast.makeText(Produtos.this, "Produtos", Toast.LENGTH_SHORT).show();
}
else if (id == R.id.nav_menu) {
Intent intent = new Intent(Produtos.this,Categoria.class);
startActivity(intent);
finish();
}else if (id == R.id.nav_lista) {
}else if (id == R.id.nav_cestavazia) {
Intent intent = new Intent(Produtos.this,Cesta.class);
startActivity(intent);
finish();
}
else if (id == R.id.nav_sobre) {
Intent intent = new Intent(Produtos.this, Sobre.class);
startActivity(intent);
}
else if (id == R.id.nav_sair)
{
Intent intent = new Intent(Produtos.this,Login.class);
startActivity(intent);
finish();
SharedPreferences preferences =getSharedPreferences("user_preferences",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
editor.commit();
finish();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.activity__produtos, menu);
inflater.inflate(R.menu.menu_search,menu);
MenuItem searchItem = menu.findItem(R.id.menu_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
searchView.setOnQueryTextListener(this);
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(new ComponentName(this, SearchableActivity.class)));
return true;
}
Oi Felipe, blz?
Acompanhei a thread e assim como o Matheus disse, para investigar o problema é necessário acesso ao projeto, pois tem um pouco de complexidade, ou seja, vai facilitar a identificação do problema rodando o projeto e simulando o problema.
Também somos capazes de modificar o código e ver o que funciona ou não, para depois orientá-lo com precisão e evitar muitas respostas que não resolvem o problema, o que acha?
[]s
Blz Alex
Pode ser. Mas como envio para voces o projeto?
Ótimo :)
A melhor opção para nós, instrutores, é via GitHub, pois é possível baixar o seu projeto facilmente e até mesmo mandar o código com as modificações esperadas.
O detalhe é que o GitHub exige um pouco de conhecimento de Git, uma ferramenta que ensinamos aqui na Alura e pode ser um impacto, sendo assim, você pode usar uma alternativa que for mais fácil para você, como é o caso de mandar via Drive da Google.
Se possível, tente via GitHub, pois além de nos ajudar, é muito comum o uso na comunidade de desenvolvedores do mundo inteiro, ou seja, é muito importante como profissional o uso dele.
Mas entendo que você espera uma solução o quanto antes, então sinta-se à vontade em escolher a opção que for mais fácil para você, apenas tenha consciência que via outras fontes, como é caso do Drive, pode demorar um pouco mais a revisão, pois ele pode vim com arquivos do seu computador que serão incompatíveis com os do nosso computador e será necessária a modificação até o projeto fazer o build corretamente, via Git já existe um arquivo que o Android Studio cria que não envia tais arquivo, o que facilita mais ainda para quem for usar o seu projeto.
Entendo que é muita informação, mas prefiro deixar bem explicado para fica transparente. Qualquer dúvida é só avisar.
Blz vou ver a melhor forma de envio.
Obrigado.