0

我一直在搜索并找到一些问题,但不是我想问的问题。第一第二,而不是我的主题,第三个为我提供了一些帮助,但根本没有。

我想制作一个使用 dbquery 从数据库填充的 tableview。每个表行包含三个文本视图,第一列和最后一列是 4 位数字,最后一列是大约 30 个字母的字符串。

所有这些我都能以某种方式管理。问题是我想让每一行都成为可点击的元素。我有一个梦想,首先使用 cursorAdapter 进行填充,然后使用 OnClickListener,但据我所知,tableview 没有这样的东西。而且 gridView 对我来说不是一个解决方案,因为我需要让第一列和最后一列比中间列窄得多。至少我没有在gridview中找到这样做的方法。

你有什么主意吗?如果您需要一些额外的信息,请问我,我会尽力而为。

谢谢

4

1 回答 1

0
/**
 * Call once per row.
 * 
 * @param data
 *            Text containing data for each cell.
 * @param rowId
 *            unique id for OnClickListener
 */
public void addRow(String[] data, int[] rowId) {
    for (int i = 0; i < data.length; i++) {
        TextView tv = getTextViewAndMakeThemPretty(data[i]);
        tv.setId(rowId[i]);
        tv.setFocusable(false);
        tv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                /**
                 * Do your stuff here.
                 */

            }
        });
        this.addView(tv);
        /**
         * Adds the TextView to Row as Cell
         */
    }
}

您必须扩展 TableRow 并将此代码添加到其中。当您需要添加行并在第一个参数中传入数据时调用它。

于 2013-01-26T22:45:16.250 回答