0

是否可以创建回调函数 ArrayList 添加/删除方法。

ArrayList 将包含图像 url,我想在添加/删除新元素后立即运行我的代码(更新 UI)。

4

3 回答 3

6

将列表封装在您自己的对象中,并在将元素添加到列表之前或之后做任何您想做的事情:

public class UrlContainer {

    private List<String> urls = new ArrayList<String>();

    public void add(String url) {
        doSomething();
        urls.add(url);
        doSomethingElse();
    }

    ...
}
于 2013-01-26T21:58:36.540 回答
1

你想要的是一个装饰器。你扩展了 ArrayList 但你也实现了接口,所以你基本上是伪装成一个实例,你是在增强核心行为,或者装饰它。

装饰器

于 2013-01-26T21:59:25.173 回答
0

看看Glazed Lists。您可以创建一个 EventList 并监听添加/删除事件。

(是的,他们在内部使用代表......)

于 2013-01-26T22:07:58.283 回答