2011-01-06 60 views
2

在res/values下編輯我的strings.xml時,我可以看到它們出現在gen/my_package/R.java中,但是它們是static final int的,爲什麼?Android:字符串不是字符串,在strings.xml中?

- 爲什麼它們是靜態最終的,大概這意味着我無法更新它們,即如果我將一個字符串分配給文本框,那麼可以從我的代碼更新該字符串以更新文本的內容框?

- 也爲什麼這些整數,特別是他們似乎是十六進制值。如果這是聲明這些值的最佳方式,那麼爲什麼我們不只是首先將它們聲明爲十六進制值?

回答

7

它生成的int被android用來檢索你的String。您必須具有對Context的引用(例如Activity)才能獲取資源。例如在你的活動中,你可以說。

this.getString(R.string.myString); 

中的getString在Activity是一個捷徑

context.getResources().getString(R.string.myString); 

希望這有助於!

+0

我明白了,所以它更多的是一個指針,而不是我真正需要維護的東西。 – jwbensley 2011-01-06 21:47:11

相關問題