如果从数据项中删除项,则android notifyDataSetChanged不工作

如果从数据项中删除项,则android notifyDataSetChanged不工作,android,listview,baseadapter,notifydatasetchanged,Android,Listview,Baseadapter,Notifydatasetchanged,我正在开发一个android应用程序,其中我使用一个基本适配器并以列表形式显示数据。现在,如果我从列表中删除任何对象并调用notifyDataSetChanged,会发生什么情况,它将无法按预期工作。我用下面的方式试过了 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); shareDataList = getData();

我正在开发一个android应用程序,其中我使用一个基本适配器并以列表形式显示数据。现在,如果我从列表中删除任何对象并调用
notifyDataSetChanged
,会发生什么情况,它将无法按预期工作。我用下面的方式试过了

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);



    shareDataList = getData();
    shareListAdapter = new SharedHistoryListAdapter(this, shareDataList);
    sharedList.setAdapter(shareListAdapter);

}

@Override
protected void onResume()
{

     super.onResume();

    // after deleting data it is coming inside onresume ... 

    shareDataList = getData();

    shareListAdapter.notifyDataSetChanged();

}
我检查了活动和适配器内部的数据大小。所以在活动中,它显示的是预期的计数,但在适配器中,它并没有显示更新的计数。我错过什么了吗?需要一些帮助。

我想,在getData()方法中,每次都会得到新的ArrayList对象。 你只要打个电话就行了

shareListAdapter.notifyDataSetChanged();

将列表设置为适配器后,无法更改列表的引用。因此,请删除该行

 shareDataList = getData(); 
并替换为

    shareDataList.clear();
    shareDataList.addAll(getData());

现在调用
shareListAdapter.notifyDataSetChanged()

您在哪里删除该项?它的列表视图以及详细视图。因此,内部细节视图tat是我的新活动,我正在从该列表中删除数据。如果我更新任何数据项,它将显示更新的数据,但只有当我从中删除时,它才会正常工作。感谢您的快速重播。它工作正常。这么愚蠢的错误。谢谢你的帮助。但我有一个简短的问题。如果我正在为oncreate内的列表设置一些数据。再次在onresume中通知数据集更改。当它第一次执行oncreate和onresume时,是否会在加载时导致性能问题?对于这个微小的更改,它不会导致性能问题。