notifyDataSetChange没有被调用

时间:2017-09-04 10:07:41

标签: android

我使用自定义适配器进行列表视图,我想在点击某个项目时显示图像,

<{1>}中的

listView.OnItemClickListener无效,未调用

我希望将所选项目的可见性更改为可见

在项目上单击监听器代码:

notifyDataSetChange()

自定义适配器getView方法代码:

Music m = (Music) musicManager.getItem(position);
                        m.setPlaying(true);
                        musicManager.notifyDataSetChanged();

我如何在列表视图中的项目上通知音乐管理器更新对象?

1 个答案:

答案 0 :(得分:0)

<强>更新

像这样更改getItem()方法:

    @Override
    public Object getItem(int position) {
        return list.get(position);
    }

<强> OLD

根据您的问题,目前尚不清楚您所做出更改的列表。您需要更改适配器中使用的列表中的值。该列表的另一个目标是行不通的。如果可能,请与活动和适配器共享您的整个代码,现在尝试这样的事情:

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
               YourListItem  item = (YourListItem)adapterView.getItemAtPosition(i);
               item.setPlaying(true);
               yourAdapter.notifiyDatasetChanged();
            }
        });