Pergunta

Eu sei que há toneladas de outras threads redor sobre este mesmo tema, mas nenhum deles parece trabalhar com o meu cenário e eu não conseguia minha listview para trabalhar com o seu código.Basicamente, eu estou usando um SimpleCursorAdapter preencher um listview com os itens do banco de dados.Cada listview linha usa um layout personalizado que consiste de uma seleção e de uma linha de texto simples.Como posso detectar um clique na caixa de seleção?Eu sei que eu preciso para usar OnItemClickListener, mas eu não sei como incorporar isso no meu código.Aqui está o meu código:

remindersCursorAdapter = new SimpleCursorAdapter(this,
                         R.xml.view_reminders_item_layout,
                         remindersCursor, new String [] { RemindersDAO.NAME },
                         new int[] { R.id.view_reminders_item_text } );

viewRemindersListView.setAdapter(remindersCursorAdapter);

R. xml.view_reminders_item_layout é o costume listview arquivo de layout.Como faço para capturar a caixa de seleção desse arquivo e definir um clique ouvinte a ele?Obrigado por toda sua ajuda!

Foi útil?

Solução

Se você deseja verificar a caixa de verificação quando um item for clicado, você pode fazer isso definindo verificado o estado da caixa de Seleção no método onItemClick.

  @Override
  public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {

       // now get the checkbox view. Then set the checked status.
        CheckBox checkbox = (CheckBox) view.findViewById(R.id.check_box);
        checkBox.setChecked(!checkbox.isChecked());
  }

Se você deseja detectar clique na caixa de seleção somente, em seguida, defina o foco verdadeiro em xml.// na sua lista personalizada ver item.Ele leva o modo de exibição atual foco.

      <Checkbox>
          android:focusable="true"
      </Checkbox>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top