所有在整個開發documents & tutorials,他們reccomend使用findViewById()
到「查找被認定通過從在的onCreate(捆綁)處理XML id屬性視圖」,所以我完全被利用到處都需要一個視圖來引用xml文件中的某些東西。這導致了一些問題,比如如果我需要使用靜態方法中的視圖,或者據我所知,除onCreate
之外的任何方法。最近我偶然發現了setId()
,它除了簡單易用,因爲它遵循標準的「getters & setters」協議,所以它除了更簡潔,更具可讀性之外,似乎對您在應用程序中的使用位置沒有要求。findViewById VS SETID
什麼是真正的區別是:
setId - 「設置此視圖的標識符標識不必在此視圖的層次結構獨特的標識符應該是一個正數。」
&
findViewById - 「查找具有給定id的子視圖如果該視圖具有給定id,返回此視圖」
它們是可以互換的嗎?有沒有隻允許使用其中一種的情況?
似乎在調用'findViewById'之前在視圖上調用'setId'會導致一個fc在哪裏不曾是一個,但也許這裏還有其他事情發生? – 2011-06-14 19:43:32