Pergunta

Estou tentando colocar uma caixa de seleção no ExpandabLelistView. Como faço isso? Eu estendo bashexpandableListAdapter e coloco o seguinte no getGroupView ():

@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
   ViewGroup parent) {
    View view = convertView == null ?
      context.getLayoutInflater().inflate(R.layout.onet_head, null) : convertView;
     ((TextView)view.findViewById(R.id.onetText)).setText(cats.get(groupPosition).value); 
    return view;
}

Observe que o layout inflado? É aí que estou colocando o TextView e a caixa de seleção. Percebi que colocar uma caixa de seleção no layout da linha do meu grupo desativa a funcionalidade de linha do grupo padrão ao clicar na linha faz com que uma lista secundária (filho) apareça. A caixa de seleção está funcionando como esperada, mas quando eu clico fora do IT, o clique nunca é detectado pela caixa de seleção Ether ou pelo OnGroupClickListener. Suspeito que colocar a caixa de seleção em linha de grupo dessa maneira interfira na detecção/manuseio de eventos, mas até agora não sou capaz de rastreá -la

Alguém pode me ajudar a resolver isso? A caixa de seleção funciona bem, incluindo a detecção de cliques ao clicar diretamente na caixa

Foi útil?

Solução

Sempre que você coloca um item focado em uma lista, os itens da lista não respondem mais a cliques ou algo assim. Para cada item que você coloca no item da lista que é focado (botões, caixas de seleção, etc.), você precisa definir o atributo Android: Focusable para false.

Eu tive uma pergunta semelhante e essa foi a resposta para mim.Android Custom ListView Incapaz de clicar em itens

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top