我是初學者,正在邊做專題邊學android
版本:2.2 使用工具:eclipse
想做的:
程式開啟後將資料庫裡的人名丟到listview裡,點擊後進入另一頁面並帶出其他資料
結果:
點下listview後程式當掉
問題:
在寫ListView的onItemClick事件時前面的Override編譯器不給加,但是我找到的範例都有加上去
而且不加去run結果就是程式錯誤
錯誤訊息:
The method onItemClick(AdapterView<?>, View, int, long) of type new AdapterView.OnItemClickListener(){} must override a superclass method
程式碼:
(import略)
public class studenteditlist extends Activity {
private ListView studentListView1;
(其他宣告略)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.studenteditlist);
//建立資料庫school和表單Table:kindergartenersData (略)
//取得所有資料的USER_NAME,安置在list[]上 (略)
//顯示USER_NAME在list上 (略)
//LISTVIEW點擊事件
studentListView1.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override→就是這個被建議移除
public void onItemClick(AdapterView<?> parent,View view, int position, long id)
{
(略,debug跑到前面就不能動了)
}
});
}
2 則回應
你那邊是手打還是自動產生?
讓他以自動產生的方式會不會有錯誤
你那邊是手打還是自動產生?
讓他以自動產生的方式會不會有錯誤
是手打的
自動產生的做法我不是很確定
我在打完
studentListView1.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
}
後,游標一從Source→generate delegate methods→studentListView1裡的onItemClick打勾,
讓他自己插入程式碼
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
}
沒有@Override
不過跑模擬器後裡面的TOAST測試訊息可以正常RUN過
算是解決問題了,如果有問題再來問
謝謝你