0

我有一个onClick这样的:

public void onClick(View v) {
    updateTable(v.getId()); //All ID's are Int, e.g. id=400
}

public void updateTable(int intID) {
    TextView itemToChange = (TextView) findViewById(intID);
    itemToChange.setTextColor(Color.RED);
}

所以我有了TextView(id=400)的ID,我该如何改变它的颜色呢?

我想要做的是findViewById(int)或者我该如何传递vupdateTable()使用

((TextView) v).setTextColor(Color.RED);

有任何想法吗?

4

1 回答 1

1

如果你想将 v 传递给你的函数,那你为什么不直接传递 v 呢?

public void updateTable(View view)

您仍然可以使用相同的函数调用来获取 id。现在你甚至不需要 findViewById 因为你已经有了视图的句柄。只需将其转换为 textView。

TextView colorChanger = (TextView) view;
于 2012-06-08T17:57:21.797 回答