簡體   English   中英

清除ArrayList並從片段中的適配器ListView中進行notifyDataSetChanged

[英]Clear ArrayList and do notifyDataSetChanged in adapter ListView from fragment

如何清除ArrayList並從片段中在適配器ListView進行notifyDataSetChanged()

這是我的快捷方式代碼:

public class ConnectionsFragment {
    public onClick() {
        // do clear data and notify it (from ListView), how?!
    }

    private class ArrayAdapter extends BaseAdapter {
        ArrayList<ConnectionsModel> data;

        // constructor saves received data to `data`
        // public view `getView()` displays it
    }
}

而且我想清除數據並在片段類的onClick()之后通知我完成了它(或者甚至更容易清除ListView直到我從API讀取新數據-所以我想在從API讀取時清除ListView )。 。

只需在適配器中創建一個公共方法,並將該變量設為私有,以防止不必要的編輯或清除該變量:

private ArrayList<ConnectionsModel> mData;

public onClick() { 
    // do clear data and notify it (from ListView), how?! 
    clearData();
} 

public void clearData() {
    mData.clear();
    // do something else here if you want.  Like some kind of visual notification to the user
    notifyDataSetChanged();
}

如果您的onclick方法在創建適配器的片段中(在本示例中稱為mAdapter),則onclick將為:

public onClick() { 
    // do clear data and notify it (from ListView), how?! 
    mAdapter.clearData();
} 

如果您的getView()方法是從data ArrayList中提取的,則您應該能夠調用data.clear(); 然后notifyDataSetChanged(); 從您的ArrayAdapter類中

暫無
暫無

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

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