繁体   English   中英

适配器不在ListView中显示数据

[英]Adapter not displaying data in ListView

我正在做以下事情:

1- Activity1(发送数组列表)到Activity 2 2- Activity 2(使用自定义适配器在ListView中显示列表)并将数组列表传递给第三个Activity 3 Activity 3(在arrayList中添加更多值并将其传递回Activity 2)

现在,一切正常,除非我将阵列列表从活动3传递回2。它不添加新的修改后的阵列列表。 是的,它正确地传递了数组列表。 我已经使用Debug测试了它。

我正在为ListView使用以下代码

活动2

listView = (ListView) findViewById(R.id.receiptsListView); 

         adapter = new CustomArrayAdapter(this, myArrayList);
         listView.setAdapter(adapter);

@SuppressWarnings("unchecked")
    public synchronized void onActivityResult(final int requestCode, int resultCode, final Intent data) 
    {
        if (resultCode == Activity.RESULT_OK) 
        {
         if (requestCode == ADD)
         {
            Custom= (ArrayList<Custom>) data.getSerializableExtra("arrayList");
            addArryaListInListView();
         }
        }
    }

    private void addArryaListInListView()
    {
        adapter.notifyDataSetChanged();
    }

请告诉我该怎么办,而不是adapter.notifyDataSetChanged();

if (requestCode == ADD)
         {
            Custom= (ArrayList<Custom>) data.getSerializableExtra("arrayList");
            addArryaListInListView();
         }

在上面的代码中,您从ACtivity获得了数据,但是您错过了没有将其添加到适配器的主要内容。.我认为应该将数据添加到适配器,然后您应该说notifyDataSetChanged() ,但是我没有看到它这里..

更改数据后,可以再次设置lisAdapter

listView.setAdapter(adapter);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM