带有自定义列表的 AutoCompleteTextView:如何设置 OnItemClickListener

2024-03-16

我正在开发一个使用标签的应用程序。访问这些内容应该尽可能简单。使用 AutoCompleteTextView 似乎适合我。我想要的是:

  • 现有标签应显示在可选择列表中,每个项目一侧都有一个复选框
  • 现有标签应在 AutoCompleteTextView 焦点时显示(即不在输入字母后显示)

到目前为止我所做的是将标签存储在专用的 sqlite3 表中。查询标签会产生游标。 Cursor 被传递给 SimpleCursorAdapter,如下所示:

Cursor cursor = dbHelper.getAllTags();
startManagingCursor(cursor);
String[] columns = new String[] { TagsDB._TAG};
int[] to = new int[] { R.id.tv_tags};
SimpleCursorAdapter cursAdapt = new SimpleCursorAdapter(this, R.layout.tags_row, cursor, columns, to);
actv.setAdapter(cursAdapt);

正如你所看到的,我创建了标签行.xml看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:paddingLeft="4dip" android:paddingRight="4dip"
    android:orientation="horizontal">
    <TextView android:id="@+id/tv_tags" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:layout_weight="1"
        android:textColor="#000" android:onClick="actv_item_click" />
    <CheckBox android:id="@+id/cb_tags" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:onClick="actv_item_checked" />
</LinearLayout>

它看起来像这样:

图片http://img708.imageshack.us/img708/5992/devicem.png http://img708.imageshack.us/img708/5992/devicem.png

所以结果就像我想要的那样显示。但 TextView 的 onClick 侦听器没有响应。而且我不知道如何在(取消)选择某个项目后访问数据。

列表的行为应该如下:

  • 点击复选框项目应将相应的标签插入/附加到 AutoCompleteTextView 中(标签将以分号分隔)
  • 点击 TextView 项目应将相应的标签插入/应用到 AutoCompleteTextView 中并关闭列表。

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有自定义列表的 AutoCompleteTextView:如何设置 OnItemClickListener 的相关文章

随机推荐