2011-04-03 112 views
2

我需要一個動態字符串數組。我看到的所有例子都顯示硬編碼的字符串數組。基本上我有一個供用戶選擇的年份列表。這些年是艱難的,但不幸的是,今年不會是明年的一個相關選擇。我不希望在未來推動更新,這可能會在今年的某種系統調用中動態生成,並在未來的剩餘時間內以X年爲單位。Android創建動態字符串數組

我不知道如何使變量編輯XML,任何洞察讚賞

澄清: 我已編輯RES>值> strings.xml中有多年的列表。我手動鍵入多年的列表項,

這將是: 列表項2011 列表項2012 列表項2013 ..........

但在2012年,較舊的年份不會相關,所以我需要重新生成這個字符串數組。有沒有辦法讓輸入年份成爲變量?

如這將是: 列表項YEAR 列表項YEAR + 1 列表項YEAR + 2

,並在Java中的功能將讓列表知道這些價值觀真的是,或者其他東西

+0

你是什麼意思的「硬編碼」?在一個Java類或在res XML中? – Aleadam 2011-04-03 03:14:39

+1

@RD .:目前尚不清楚你想做什麼。您可以使用日期/時間類別之一(公曆,日曆,日期等)動態地獲取「當前」年份。 – Squonk 2011-04-03 03:41:19

回答

1

我不確定是什麼問題。也許你不確定如何在Java中做以前在XML中做的事情?

創建一個ArrayList年很簡單。這可以通過使用ArrayAdapter來支持ListViewSpinner

ArrayList<Integer> years = new ArrayList<Integer>(); 
int thisYear = Calendar.getInstance().get(Calendar.YEAR); 
for (int i = 1990; i <= thisYear; i++) { 
    years.add(i); 
} 
+0

編輯我原來的帖子澄清,這可能是解決方案,我會進一步探討 – CQM 2011-04-04 00:01:21

+0

謝謝。我不得不問了兩次,但我現在明白了。很簡單,只是在想它錯了。 – CQM 2011-04-09 22:55:27

1

一旦你編譯你的apk並簽名,它就被封了。在這一點上沒有辦法編輯XML。您的答案是使用許多基於已知日曆日期檢索年份的java日期函數之一。

如果你有一個例子發佈在這裏

+0

我編輯了我原來的帖子,但我也可能在這裏有一個解決方案 – CQM 2011-04-04 00:01:48