我正在创建一个动态的TableLayout和TableRows,其中包含ImageView,TextView等视图。我正在使用setId()方法为它们分配id。
作为id我使用一个int变量并将其递增以将其指定为视图id,并且还存储在int数组或列表中。后者我使用数组或列表在事件处理程序中标识它们。
我只是想知道正确的方式(或问题)是如此分配id还是有更好的方法。
例如
变量
final int CHECK_BUTTON_ID = 982301;
int ids_check[];
循环中的我创建了视图并设置了id。
Button btn_check = new Button(this);
int id = i + CHECK_BUTTON_ID;
btn_check.setId(id);
ids_check[i] = id;
答案 0 :(得分:0)
如果查看Android资源编译器生成的ID,您会发现它们都是0x7f000000或更高版本。 (只需在Eclipse中突出显示任何R.id.id_name,然后按F3自行查看。)
因此,如果您使用视图动态生成ID,只需使用比此更低的范围,您应该没问题。