3

我正在使用 mvp4g 开发一个应用程序,我有一个非常复杂的视图,它显示一个小部件和许多可应用于此小部件的过滤选项。作为要求,所有过滤器都包含在历史令牌中。

我目前使用将 Guava 转换为令牌的历史转换器,ListMultimap<String, String>反之亦然。这个多图作为事件的参数传递。

不幸的是,这会带来不便:

@Event(handlers = ExampleParametrizedPresenter.class, name = "example", historyConverter = ExampleParametrizedHistoryConverter.class)
public void showExample(@Nullable ListMultimap<String, String> parameters);

除了parameters在演示器中检查是否等于 null 之外,每次我需要使用一些默认参数触发此事件时,我都必须构造一个多重映射,然后检查(再次在演示器中)是否存在所有必需的参数。

我想要的是有可能用不同的论点来触发这个事件。例如,可以打电话(假设我需要传递一些日期):

myEventBus.showExample(myMultimap);
myEventBus.showExample(fromDate, toDate);
myEventBus.showExample(ExampleType.MONTH, 8);

有什么办法可以做到这一点?

4

0 回答 0