0

如果您创建一个AbstractActivity子类,那么您必须定义以下方法:

@Override
public void start(AcceptsOneWidget panel, EventBus eventBus) {
    // ...
}

这是否意味着AbstractActivity可以用不同的显示区域“启动”相同的内容?有人可以从用户体验 (UX) 的角度提供一个具体的例子来说明这将如何发生吗?

换句话说,如果我可以说someActivity.start(displayRegion1, eventBus)someActivity.start(displayRegion2, eventBus),那么对我来说,这意味着:

  1. 活动不一定与屏幕上的特定位置相关联,因此可以用于处理(在这种情况下,它实际上做了什么?AcceptsOneWidget )来自屏幕任何部分的显示区域( impl);或者
  2. 活动与特定位置相关联,但或多或​​少是一种“查看器”类型的构造,能够通过任何显示区域并显示其内容。

有人可以向我解释这种关系吗?提前致谢!

4

1 回答 1

1

活动不(不应该)依赖于的显示位置,因此它传递了一个AcceptsOnWidget表示该显示区域的参数,并且它应该将自身(或其视图或其他)设置为该显示区域的小部件。

显示活动的位置(即参数的值)在以下AcceptsOneWidget位置定义:setDisplayActivityManager

  1. anActivityManager 控制显示区域
  2. 它要求它ActivityMapper为给定的活动Place
  3. 正是start这个活动将显示区域作为参数传递给它
  4. 活动准备好后,会在该显示区域中显示自己。
于 2012-10-26T10:17:35.107 回答