como obter identificação em layout diferente
-
25-09-2019 - |
Pergunta
Eu tenho id "@+id/call"
dentro single_item.xml
Quando eu uso findVewById
é (o layout setcontextview(R.layout.main)
) .O APP CRASH .Como corrigir o erro
Solução
Você está tentando encontrar uma visão (r.id.call) que é declarada em r.layout.single_item no Layour r.layout.main, então eu acho que está lançando uma exceção de ponteiro nulo.
Você deve declarar seu elemento "@+id/chamado" no seu arquivo main.xml ou definir a visualização de contexto para r.layout.single_item
Outras dicas
Se você deseja acessar uma visualização em outro layout (não no layout ativo), poderá inflar o layout que deseja usá -lo e acessá -lo dessa maneira.
Exemplo:
View inflatedView = getLayoutInflater().inflate(R.layout.other_layout, null);
TextView text = (TextView) inflatedView.findViewById(R.id.text_view);
text.setText("Hello!");
Mais informações sobre a inflação de layouts podem ser encontradas aqui.
A maneira simples de buscar id
De uma visão é:
String id = getResources().getResourceEntryName(view.getId());
View parent = (View)view.getParent();
??? = (???)parent.findViewById(R.id.call);
tente isso. Espero que ajude