我正在创建一个带有动态自定义表格行的表格。我需要在活动类中获取 id。
main_Activity-->MyTableLayoutView-->MyTableRow
我的问题是,如何将在表格(TextViews)中单击的单元格的 id 获取到 main_Activiy。
MyTableRowView:
public void addRow(String[] data, int[] rowId) {
for (int i = 0; i < data.length; i++) {
TextView tv = parseTextView(data[i]);
tv.setId(rowId[i]);
tv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TextView tv2 = (TextView) v;
clickedText = tv2.getText().toString();
Debug.debugMsg(clickedText + " " + tv2.getId());
}
});
this.addView(tv);
}
}
据我所知,是从 TablerowView 类中获取 id,但我需要它在 Activity 类中,请如果有人能启发我。提前致谢。
活动类:
private void showTables() {
db.open();
db.importDb();// TODO
table = new TableLayoutView(this,Converter.toArrayListStringArray(db.getDbTablesForChoose()));
table.addDataListArray(Converter.toArrayListStringArray(db.getDbTablesForChoose()),true);
llChooseSQLTable.addView(table);
}
表格布局视图:
public void addDataListArray(ArrayList<String[]> data, boolean header) {
for (int i = 0; i < ROW_NUMBERS; i++) {
TableRowView tableRow = new TableRowView(context);
tableRow.setLayoutParams(new LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
tableRow.addRow(data.get(i),idHandler.getNextIdsRow());//idHandles passes unique id.
this.addView(tableRow);
}
}