示例#1
0
  /** Registers av given view to the navigator and adds it to the NavBar */
  private void addView(Class<? extends View> viewClass) {
    ViewConfig viewConfig = viewClass.getAnnotation(ViewConfig.class);

    switch (viewConfig.createMode()) {
      case ALWAYS_NEW:
        navigator.addView(viewConfig.uri(), viewClass);
        break;
      case LAZY_INIT:
        navigator.addProvider(new LazyProvider(viewConfig.uri(), viewClass));
        break;
      case EAGER_INIT:
        try {
          navigator.addView(viewConfig.uri(), viewClass.newInstance());
        } catch (Exception e) {
          e.printStackTrace();
        }
    }
    navBar.addView(viewConfig.uri(), viewConfig.displayName());
  }