android - ListFragment onItemClickListener 不起作用

标签 android android-listfragment

我正在使用选项卡式布局(通过滑动)。 在这里,我有 3 个由 SectionsPagerAdapter 控制的选项卡。每个选项卡都是一个 ListFragment。

现在我想在单击列表中的一项时触发一个事件。我想为每个标签设置一个监听器。

这是现在的代码(不工作,事件未触发)。

public class NyhederFragment extends ListFragment {
     public static final String ARG_SECTION_NUMBER = "section_number";
     private static final String TAG="NyhederFragment";
     private List<Item> newsItems;
     private ArrayList newsHeadlines;
     private ArrayAdapter adapter;
     private BroadcastReceiver updateReciever;

public NyhederFragment() {
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    ListView newsList = new ListView(getActivity());
    newsList.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
    newsList.setId(R.id.list);
    DatabaseHelper dbConn = new DatabaseHelper(getActivity());

    newsItems = dbConn.getAllItemsFromNews();
    newsHeadlines = new ArrayList();
    for(Item i : newsItems){
        newsHeadlines.add(i.getTitle());
    }

    adapter = new ArrayAdapter(getActivity(), android.R.layout.simple_list_item_1, newsHeadlines);

    setListAdapter(adapter);

    newsList.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view,
                  int position, long id) {
            Log.i("debug", "single click");
        }
    });

    dbConn.close();

    getActivity().registerReceiver(updateReciever, new IntentFilter("ArticlesUpdated"));
    return newsList;
}
}

怎么了,我做错了吗?

提前非常感谢!

最佳答案

如果你使用 ListFragment 那么你可以简单地使用它的覆盖方法 onListItemClick()

@Override
    public void onListItemClick(ListView l, View v, int position, long id) {
        // TODO Auto-generated method stub
        super.onListItemClick(l, v, position, id);
    }

关于android - ListFragment onItemClickListener 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14080332/

相关文章:

android - 当我拥有main代码时,为什么不能在导航中添加时间?

android - 如何在 Flutter 中获取 GPS 时间?

android - 在android中动态创建带有Fragment的ListView

android - 始终在 Fragment 中显示双倍时间菜单项

android - 在 Listview 中使用 ViewPager 时不会调用 OnItemClickListener

android - listfragment 中的第二个 listview 不滚动

android - 以编程方式隐藏/显示上下文操作栏

java - 如何将图标添加到 Android Studio 的抽屉导航模板?

Android:在 fragment 中显示列表

android - 在 Android 中动态更改 View 内部 View