MainActivity类型的onListItemClick(ListView,View,int,long)方法必须覆盖或实现超类型方法

时间:2014-09-22 08:46:22

标签: android listview listactivity

我刚刚将 ListActivity 更改为 Activity ,除了使活动执行某些操作的代码,如果单击列表项( onListItemClick ),一切正常EM>)。

我收到此错误:

The method onListItemClick(ListView, View, int, long) of type MainActivity must override or implement a supertype method

@Override
protected void onListItemClick(ListView lv, View v, int position, long id) {
        super.onListItemClick(lv, v, position, id);

        // Do something

      }

(这个类扩展了ListActivity,一切正常,但现在我希望它扩展Activity)。

除了这段代码外,一切正常。

2 个答案:

答案 0 :(得分:2)

如果您从ListActivity更改为Activity,则必须将onListItemClick更改为urListView.setOnItemClickListener方法。就像,

 urListView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            // TODO Auto-generated method stub



        }
    });

答案 1 :(得分:0)

您的问题是,您延伸为ListActivity,过了一段时间后,您已将ListActivity移除,并将您的课程扩展为ActivityonListItemClickListActivity的覆盖方法,Activity

中无法使用

解决方案:如果您想在ListItemClick中使用Activity,那么您可以通过以下方式执行此操作,您需要使用ListActivity而不是{{1}扩展您的MainClass }}

使用Activity

时,有两种方法可以setOnItemClickListener使用ListView

- 对您的Activity

实施OnItemClickListener
Activity

- 撰写public class MyActivity extends Activity implements OnItemClickListener { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { } }

ListView's setOnItemClickListener