【问题标题】:Populate ListView with ArrayAdapter and navigate使用 ArrayAdapter 填充 ListView 并导航
【发布时间】:2013-02-25 08:41:31
【问题描述】:

例如,如果我有一个班级:

class Folder {
    public String name;
    public ArrayList<Folder> subFolders;
    public ArrayList<Folder> subFolders;
}

我正在尝试用自定义ArrayAdapter 填充ListView,然后浏览这个充满数据的ArrayList“文件夹”。我尝试这样的事情来显示subFolders

private OnItemClickListener listlistener = new OnItemClickListener() {

    @Override
    public void onItemClick(int position, long arg3) {
        currentFolder = (Category) parent.getItemAtPosition(position);
        folders = currentFolder.subFolders;
        folderAdapter.notifyDataSetChanged();
    }
};

但它不起作用。有什么建议可以帮助解决这个问题吗?

【问题讨论】:

    标签: android android-arrayadapter


    【解决方案1】:

    在您的自定义 ArrayAdapter 中创建一个公共方法

    public void setList(List<Item> items){
       this.items = items;
    }
    

    现在

    private OnItemClickListener listlistener = new OnItemClickListener() {
    
        @Override
        public void onItemClick(int position, long arg3) {
    
            currentFolder = (Category) parent.getItemAtPosition(position);
    
            folders = currentFolder.subFolders;
            folderAdapter.setList(folders);
            folderAdapter.notifyDataSetChanged();
    
        }
    };
    

    【讨论】:

    • 当我这样做时,旧对象留在listView
    • 如何处理用getView()方法显示新数据?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多