@Override 在ListView onItemClick的錯誤

by ianchu
2011.07.13 03:49PM
@Override 在ListView onItemClick的錯誤

我是初學者,正在邊做專題邊學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 則回應

  •  你那邊是手打還是自動產生?

    讓他以自動產生的方式會不會有錯誤

    2011-07-13
    • Kerash Huang wrote:

       你那邊是手打還是自動產生?

      讓他以自動產生的方式會不會有錯誤

      是手打的
      自動產生的做法我不是很確定
      我在打完
      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過
      算是解決問題了,如果有問題再來問
      謝謝你
       

       

      2011-07-14