2011-09-28 13 views
15

私はAndroid 2.3.3を使用しています。私はレイアウトのように、Android OnItemClickListenerが機能しない

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <ListView android:id="@+id/mainList" android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 
</LinearLayout> 

を設定し、私は私がsettheとき、ecliseのIDEを使用して

package org.dewsworld.ui; 

import org.dewsworld.core.NBConfig; 

import android.app.Activity; 
import android.app.ListActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.ViewGroup; 
import android.widget.ArrayAdapter; 
import android.widget.ListAdapter; 
import android.widget.ListView; 

public class NewsBotActivity extends ListActivity { 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     setListAdapter(new ArrayAdapter<String>(this, 
              android.R.layout.simple_list_item_1, 
              NBConfig.topics)); 

     ListView listView = (ListView) findViewById(R.id.mainList) ; 
     listView.setOnItemClickListener(new OnItemClickListener() { 

     }); 
    } 
} 

でそれを操作していOnItemClickListenerそれは私にエラーを与える

The method setOnItemClickListener(AdapterView.OnItemClickListener) in the type AdapterView<ListAdapter> is not applicable for the arguments (new 
    OnItemClickListener(){}) 

私ができますこれを修正しないでください。あなたの代わりにこれを試してみてください、間違ったOnItemClickListenerを輸入し、そしてandroid.view.View.OnClickListener

方法
import android.widget.AdapterView.OnItemClickListener; 
+1

インポートしているAdapterView.OnItemClickListener?そうでない場合は、 'new AdapterView.OnItemClickListener(){' –

+1

'Ctrl + 1'がeclipseで便利かもしれません;) – Gio

+1

import android.widget.AdapterView.OnItemClickListener; –

答えて

45

[私はエラーと画像を追加しました]

public void onItemClick(AdapterView parent, View v, int position, long id) 
{ 
    // Display a messagebox. 
    Toast.makeText(this,"Your Listener Works!",Toast.LENGTH_SHORT).show(); 
} 

は、自動的にすべてのあなたの輸入を整理するために日食中のOはCtrl + Shift +を使用してみてください...

:onItemClick()関数を定義することで、新しいオブジェクトの本文に記入について
+0

うわー!できます!しかし、どのListenerをインポートするかを設定するにはどうすればよいですか? Caz、これはEclipseによって自動的に生成されます – Dewsworld

+1

Eclipseでのインポートの完了は、ctl-shift-oのようなもので、通常は選択する競合するインポートのリストを提供します。 – Pedantic

5

のインポートを削除しているようだimgimg

1

クラスにOnItemClickListenerを実装するだけです。このよう

public class ClassName extends Activity implements OnItemClickListener{}

関連する問題