我知道关于同一主题的大量其他线程,但它们都没有似乎与我的场景合作,我无法让我的ListView与他们的代码一起使用。基本上,我正在使用SimpleCursoroDapter来填充列表查看与数据库中的项目。每个ListView行使用自定义布局,由复选框和简单文本的行组成。如何检测到复选框的单击咔嗒声?我知道我需要使用OnITemClickListener,但我不知道如何将其合并到我的代码中。这是我的代码:

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是自定义ListView布局文件。如何从此文件中捕获复选框并设置单击侦听器到IT?谢谢你的所有帮助!

有帮助吗?

解决方案

如果在单击单击项目时选中复选框,则可以通过在OnItemClick方法中设置Checkbox的选中状态来完成此操作。

  @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());
  }
.

如果要检测只有Checkbox的单击咔嗒声,则在XML中设置聚焦真实。 //在您的自定义列表中查看项。它需要当前的视图焦点。

      <Checkbox>
          android:focusable="true"
      </Checkbox>
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top