簡體   English   中英

更新ListView上的項目刪除或重命名

[英]Update ListView on item delete or rename

我在選項卡式Fragment中包含以下代碼:

    private SetRowsCustomAdapter adapter;
private ArrayList<SetRows> rowsArray = new ArrayList<SetRows>();

    for (Map.Entry<String, String> current_file:filesInFolder.entrySet()) {
     rowsArray.add(new SetRows(R.drawable.ic_launcher, current_file.getKey().toString(), current_file.getValue().toString()));
        }
         adapter = new SetRowsCustomAdapter(getActivity(), R.layout.customlist, rowsArray);
     dataList = (ListView) mFrame3.findViewById(R.id.lvFiles);
     dataList.setAdapter(adapter);
     }

getActivity().deleteFile(txt + ".trp");
adapter.remove(adapter.getItem(info.position));
adapter.notifyDataSetChanged();
startActivity(new Intent(getActivity(), MainActivity.class).putExtra("tab", 2));

它會刪除ListView的一行並啟動一個新活動以顯示更改。 盡管我有adapter.notifyDataSetChanged() ,但是如果刪除了沒有上面代碼最后一行的行,它就不會顯示更改。

有人可以幫助我解決此問題,以便在不啟動新活動的情況下顯示更改。

使用自定義適配器比較合適,這些鏈接將為您提供幫助。 在Android中刪除ListView項。 如何刪除arraylist項,然后更新listview

我認為您需要從arraylist中刪除,然后在調用此函數時調用適配器setNotifyDataChange(),b'cos,它會從arraylist重新加載適配器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM