2011-12-17 29 views
2

我正在創建一個動態TableLayout和TableRows其中包含像ImageView,TextView.I我使用setId()方法他們的id。如何爲Android中的視圖分配動態ID?

爲ID我使用int變量並加一,以將其分配作爲視圖id和還存儲在一個int數組或list.And後者我使用數組或列表,以確定它們中的事件處理程序。

我只是想知道是不是正確的方式(或problmatic)分配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; 
+1

它會工作,除非你有刪除一些動態創建的錶行 – 2011-12-17 06:03:21

回答

0

如果你看一下是那些獲得通過Android的資源編譯器生成的ID,你會看到他們都0x7f000000或更高。 (只需突出顯示在Eclipse中任何R.id.id_name,按F3看到自己。)

所以,如果你使用動態視圖生成的ID,只用一個較低的範圍比,你應該罰款。