0

我正在尝试让 ListItems 上的 onItemClick 从片段中工作。它抱怨删除@Override 方法..这是我在片段类中的代码扩展了我的其他片段

ListView listView = (ListView) getView().findViewById(R.id.listView);
adapter = new ArrayAdapter<NewsItem>    
(getActivity(),android.R.layout.simple_list_item_1,newsItemsList);
setListAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    Intent myIntent = new Intent(view.getContext(), NewsSummaryActivity.class);
    startActivity(myIntent);
}
});
4

3 回答 3

3

您正在使用 JRE 1.5 编译器设置,这样使用@Override是错误的。您尝试复制的代码示例使用 JRE 1.6,在该版本中使用@Override.

任何一个

  • 删除,@Override因为您不能在 1.5或此处使用它
  • 使用以下命令更改编译器版本:

    项目->属性-> Java 编译器-> Java 合规级别

于 2012-12-05T22:36:07.167 回答
1

只需删除@Override. @Override当您使用接口方法时,某些编译器级别(我认为低于 1.6)会抱怨。以任何方式删除它都不会影响功能。

更详细的解释:什么时候使用 Java 的 @Override 注释,为什么?

于 2012-12-05T22:35:55.130 回答
0

只是去简单的方式......

在您的适配器类... getView 方法之间... 放 View v = convertView; 并在其上设置监听器。

enter code herev.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Toast.makeText(context, "Name : "+ list.get(position).getS_name(), Toast.LENGTH_SHORT).show();
        }
    });`

'我希望这能帮到您.....'

于 2016-05-10T11:21:50.853 回答