2008年8月25日 星期一

我想要抓出所有的 Resource IDs 名和值

Getting all resource IDs and their names and values

之前 這裡 曾提過如何由 Resource ID 的名稱,反求得 ID 的值。最近剛好在某個應用上,我需要的是-『得到所有的 drawable IDs』。Google 了一下,總算找到相關的方法,也分享給需要的人。

底下這個函式,就是依照你傳入的 Resource 類別物件,列印出該類別的所有 ID 名和值。

這個函式的用法如下:

程式的印出結果像這樣。

看到這,你大概知道這原理了。由於在 R.java 中,所有的 IDs 都是以 public + static + final 的方式,定義在 R.drawable, R.layout, R.string, R.id 等子類中。只要透過 Class.getFields() ,就可以抓出該類的所有 public 定義物件。

沒有留言:

張貼留言