今天我遇到了一個有趣的問題。我有4個字符串,我需要隨機顯示在應用程序上。所以我只是將字符串添加到我的string.xml,並設置我的文本視圖來顯示文本爲在Android中使用反射
textView.setText(R.string.text_1);
或(如果隨機數是2)
textView.setText(R.string.text_2);
等
我觀察到的變化只是在最後一個字符,使用反射
Class c = Class.forName("com.startpage.mobile.R$string");
Field field = c.getDeclaredField("text_"+num); //num is 1/2/3/4 System.out.println("**** "+field.get(null));
現在field.get(空)實際返回的ID,這樣試過(十六進制數在R.java中)值而不是字符串值我會期望。
有沒有一種方法來獲取字符串的實際值使用反射或這是Android的東西,我將不得不住?
真棒。這實施─的System.out.println( 「**********」+ getResources()。getString((Integer)field.get(null))); – Kamal 2012-03-30 06:52:22