我是一個新的在這裏。 我試圖做一個消息列表,其中消息1的內容,消息2 &消息3. 但是下面的代碼顯示錯誤消息。參數ITEMS的非法修飾符;只有最後被允許
static final String[] ITEMS = new String[] { "message 1", "message 2", "message 3" };
錯誤消息:
Illegal modifier for parameter ITEMS; only final is permitted
然而,在 「ANOTHER PROJECT」,我做一個水果列表,使用下面的代碼。
static final String[] FRUITS = new String[] { "Apple", "Banana", "Coconut" };
和它完美的罰款。兩個代碼看起來完全一樣,所以我不知道問題出在哪裏。
下面是消息列表的完整代碼。
package net.eg.itemlist;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.app.ListActivity;
public class Main extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
static final String[] ITEMS = new String[] { "message 1", "message 2", "message 3" };
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(this, R.layout.main, R.id.textview_id, ITEMS);
setListAdapter(adapter);
}
}
什麼梅內說。將該行移到'onCreate(...)'的外面,儘管我不知道爲什麼你會希望數組是靜態的。 – Squonk 2012-08-05 22:39:20
謝謝。好吧,因爲我對此很陌生,所以我在做的只是跟隨和參考互聯網上的其他例子。到目前爲止,我所知道的有關「靜態」的知識用於定義類(如果我錯了,請糾正我) – kin 2012-08-06 03:52:46
在普通Java中對數據成員(如「ITEMS」數組成員)使用'static'修飾符,意味着即使沒有創建類的實例,也可以從定義它的類訪問它。這不是你應該如何使用Android'Activity',但是它不是'普通'的Java類,所以你不應該在'Activity'類中使用'static'數據成員(字段)或靜態'方法。 – Squonk 2012-08-06 09:53:10