com.taobao.weex.ui.component.list.WXListComponent Java Examples

The following examples show how to use com.taobao.weex.ui.component.list.WXListComponent. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: WXComponent.java    From weex with Apache License 2.0 6 votes vote down vote up
protected void removeEventFromView(String type) {
  if (type.equals(WXEventType.CLICK) && getRealView() != null) {
    getRealView().setOnClickListener(null);
  }
  WXScroller scroller = getParentScroller();
  if (type.equals(WXEventType.APPEAR) && scroller != null) {
    scroller.unbindAppearEvent(this);
  }
  if (type.equals(WXEventType.DISAPPEAR) && scroller != null) {
    scroller.unbindDisappearEvent(this);
  }

  if(type.equals(WXEventType.APPEAR) && getParent() instanceof WXListComponent){
    ((WXListComponent)getParent()).unbindAppearComponents(this);
    registerAppearEvent=false;
  }
  if(type.equals(WXEventType.DISAPPEAR) && getParent() instanceof WXListComponent){
    ((WXListComponent)getParent()).unbindAppearComponents(this);
    registerAppearEvent=false;
  }
}
 
Example #2
Source File: WXSDKEngine.java    From weex with Apache License 2.0 6 votes vote down vote up
private static void register() {
  try {
    registerComponent(WXBasicComponentType.TEXT, WXText.class, false);
    registerComponent(WXBasicComponentType.IMG, WXImage.class, false);
    registerComponent(WXBasicComponentType.DIV, WXDiv.class, false);
    registerComponent(WXBasicComponentType.IMAGE, WXImage.class, false);
    registerComponent(WXBasicComponentType.CONTAINER, WXDiv.class, false);
    registerComponent(WXBasicComponentType.SCROLLER, WXScroller.class, false);
    registerComponent(WXBasicComponentType.SLIDER, WXSlider.class, true);

    registerComponent(WXListComponent.class, false,WXBasicComponentType.LIST,WXBasicComponentType.VLIST);
    registerComponent(HorizontalListComponent.class,false,WXBasicComponentType.HLIST);
    registerComponent(WXBasicComponentType.CELL, WXCell.class, true);
    registerComponent(WXBasicComponentType.INDICATOR, WXIndicator.class, true);
    registerComponent(WXBasicComponentType.VIDEO, WXVideo.class, false);
    registerComponent(WXBasicComponentType.INPUT, WXInput.class, false);
    registerComponent(WXBasicComponentType.SWITCH, WXSwitch.class, false);
    registerComponent(WXBasicComponentType.A, WXA.class, false);
    registerComponent(WXBasicComponentType.EMBED, WXEmbed.class, true);
    registerComponent(WXBasicComponentType.WEB, WXWeb.class);
    registerComponent(WXBasicComponentType.REFRESH, WXRefresh.class);
    registerComponent(WXBasicComponentType.LOADING, WXLoading.class);
    registerComponent(WXBasicComponentType.LOADING_INDICATOR, WXLoadingIndicator.class);

    registerModule("dom", WXDomModule.class, true);
    registerModule("modal", WXModalUIModule.class, false);
    registerModule("instanceWrap", WXInstanceWrap.class, true);
    registerModule("animation", WXAnimationModule.class, true);
    registerModule("webview", WXWebViewModule.class, true);
    registerModule("navigator", WXNavigatorModule.class);
    registerModule("stream", WXStreamModule.class);

    registerDomObject(WXBasicComponentType.TEXT, WXTextDomObject.class);
    registerDomObject(WXBasicComponentType.INPUT, WXTextDomObject.class);
    registerDomObject(WXBasicComponentType.SWITCH, WXSwitchDomObject.class);
  } catch (WXException e) {
    WXLogUtils.e("[WXSDKEngine] register:" + WXLogUtils.getStackTrace(e));
  }
}
 
Example #3
Source File: WXRefresh.java    From ucar-weex-core with Apache License 2.0 5 votes vote down vote up
@WXComponentProp(name = Constants.Name.DISPLAY)
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals(HIDE)) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getHostView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getHostView()).finishPullRefresh();
          ((BaseBounceView) getParent().getHostView()).onRefreshingComplete();
        }
      }
    }
  }
}
 
Example #4
Source File: WXLoading.java    From ucar-weex-core with Apache License 2.0 5 votes vote down vote up
@WXComponentProp(name = Constants.Name.DISPLAY)
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals(HIDE)) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getHostView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getHostView()).finishPullLoad();
          ((BaseBounceView) getParent().getHostView()).onLoadmoreComplete();
        }
      }
    }
  }
}
 
Example #5
Source File: WXRefresh.java    From weex-uikit with MIT License 5 votes vote down vote up
@WXComponentProp(name = Constants.Name.DISPLAY)
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals(HIDE)) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getHostView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getHostView()).finishPullRefresh();
          ((BaseBounceView) getParent().getHostView()).onRefreshingComplete();
        }
      }
    }
  }
}
 
Example #6
Source File: WXLoading.java    From weex-uikit with MIT License 5 votes vote down vote up
@WXComponentProp(name = Constants.Name.DISPLAY)
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals(HIDE)) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getHostView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getHostView()).finishPullLoad();
          ((BaseBounceView) getParent().getHostView()).onLoadmoreComplete();
        }
      }
    }
  }
}
 
Example #7
Source File: ComponentHeightComputer.java    From analyzer-of-android-for-Apache-Weex with Apache License 2.0 5 votes vote down vote up
static int computeComponentContentHeight(@NonNull WXComponent component) {
    View view = component.getHostView();
    if(view == null) {
        return 0;
    }
    if(component instanceof WXListComponent) {
        WXListComponent listComponent = (WXListComponent) component;
        BounceRecyclerView bounceRecyclerView = listComponent.getHostView();
        if(bounceRecyclerView == null) {
            return 0;
        }
        WXRecyclerView innerView = bounceRecyclerView.getInnerView();
        if(innerView == null) {
            return bounceRecyclerView.getMeasuredHeight();
        } else {
            return innerView.computeVerticalScrollRange();
        }
    } else if(component instanceof WXScroller) {
        WXScroller scroller = (WXScroller) component;
        if(!ViewUtils.isVerticalScroller(scroller)) {
            return view.getMeasuredHeight();
        }
        ViewGroup group = scroller.getInnerView();
        if(group == null) {
            return view.getMeasuredHeight();
        }
        if(group.getChildCount() != 1) {
            return view.getMeasuredHeight();
        } else {
            return group.getChildAt(0).getMeasuredHeight();
        }
    } else {
        return view.getMeasuredHeight();
    }
}
 
Example #8
Source File: WXRefresh.java    From weex with Apache License 2.0 5 votes vote down vote up
@WXComponentProp(name = "display")
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals("hide")) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getView()).finishPullRefresh();
          ((BaseBounceView) getParent().getView()).onRefreshingComplete();
        }
      }
    }
  }
}
 
Example #9
Source File: WXLoading.java    From weex with Apache License 2.0 5 votes vote down vote up
@WXComponentProp(name = "display")
public void setDisplay(String display) {
  if (!TextUtils.isEmpty(display)) {
    if (display.equals("hide")) {
      if (getParent() instanceof WXListComponent || getParent() instanceof WXScroller) {
        if (((BaseBounceView)getParent().getView()).getSwipeLayout().isRefreshing()) {
          ((BaseBounceView) getParent().getView()).finishPullLoad();
          ((BaseBounceView) getParent().getView()).onLoadmoreComplete();
        }
      }
    }
  }
}
 
Example #10
Source File: WXSDKEngine.java    From weex-uikit with MIT License 3 votes vote down vote up
private static void register() {
  BatchOperationHelper batchHelper = new BatchOperationHelper(WXBridgeManager.getInstance());
  try {
    registerComponent(
      new SimpleComponentHolder(
        WXText.class,
        new WXText.Creator()
      ),
      false,
      WXBasicComponentType.TEXT
    );
    registerComponent(
      new SimpleComponentHolder(
        WXDiv.class,
        new WXDiv.Ceator()
      ),
      false,
      WXBasicComponentType.CONTAINER,
      WXBasicComponentType.DIV,
      WXBasicComponentType.HEADER,
      WXBasicComponentType.FOOTER
    );
    registerComponent(
      new SimpleComponentHolder(
        WXImage.class,
        new WXImage.Ceator()
      ),
      false,
      WXBasicComponentType.IMAGE,
      WXBasicComponentType.IMG
    );
    registerComponent(
      new SimpleComponentHolder(
        WXScroller.class,
        new WXScroller.Creator()
      ),
      false,
      WXBasicComponentType.SCROLLER
    );
    registerComponent(
      new SimpleComponentHolder(
        WXSlider.class,
        new WXSlider.Creator()
      ),
      true,
      WXBasicComponentType.SLIDER
    );
    registerComponent(
      new SimpleComponentHolder(
              WXSliderNeighbor.class,
        new WXSliderNeighbor.Creator()
      ),
      true,
      WXBasicComponentType.SLIDER_NEIGHBOR
    );
    registerComponent(SimpleListComponent.class,false,"simplelist");
    registerComponent(WXListComponent.class, false,WXBasicComponentType.LIST,WXBasicComponentType.VLIST);
    registerComponent(HorizontalListComponent.class,false,WXBasicComponentType.HLIST);
    registerComponent(WXBasicComponentType.CELL, WXCell.class, true);
    registerComponent(WXBasicComponentType.INDICATOR, WXIndicator.class, true);
    registerComponent(WXBasicComponentType.VIDEO, WXVideo.class, false);
    registerComponent(WXBasicComponentType.INPUT, WXInput.class, false);
    registerComponent(WXBasicComponentType.TEXTAREA, Textarea.class,false);
    registerComponent(WXBasicComponentType.SWITCH, WXSwitch.class, false);
    registerComponent(WXBasicComponentType.A, WXA.class, false);
    registerComponent(WXBasicComponentType.EMBED, WXEmbed.class, true);
    registerComponent(WXBasicComponentType.WEB, WXWeb.class);
    registerComponent(WXBasicComponentType.REFRESH, WXRefresh.class);
    registerComponent(WXBasicComponentType.LOADING, WXLoading.class);
    registerComponent(WXBasicComponentType.LOADING_INDICATOR, WXLoadingIndicator.class);
    registerComponent(WXBasicComponentType.HEADER, WXHeader.class);

    registerModule("modal", WXModalUIModule.class, false);
    registerModule("instanceWrap", WXInstanceWrap.class, true);
    registerModule("animation", WXAnimationModule.class, true);
    registerModule("webview", WXWebViewModule.class, true);
    registerModule("navigator", WXNavigatorModule.class);
    registerModule("stream", WXStreamModule.class);
    registerModule("timer", WXTimerModule.class, true);
    registerModule("storage", WXStorageModule.class, true);
    registerModule("clipboard", WXClipboardModule.class, true);
    registerModule("globalEvent",WXGlobalEventModule.class);
    registerModule("picker", WXPickersModule.class);
    registerModule("meta", WXMetaModule.class,true);
    registerModule("webSocket", WebSocketModule.class);


    registerDomObject(WXBasicComponentType.INDICATOR, WXIndicator.IndicatorDomNode.class);
    registerDomObject(WXBasicComponentType.TEXT, WXTextDomObject.class);
    registerDomObject(WXBasicComponentType.INPUT, BasicEditTextDomObject.class);
    registerDomObject(WXBasicComponentType.TEXTAREA, TextAreaEditTextDomObject.class);
    registerDomObject(WXBasicComponentType.SWITCH, WXSwitchDomObject.class);
    registerDomObject(WXBasicComponentType.LIST, WXListDomObject.class);
    registerDomObject(WXBasicComponentType.VLIST, WXListDomObject.class);
    registerDomObject(WXBasicComponentType.HLIST, WXListDomObject.class);
    registerDomObject(WXBasicComponentType.SCROLLER, WXScrollerDomObject.class);
  } catch (WXException e) {
    WXLogUtils.e("[WXSDKEngine] register:", e);
  }
  batchHelper.flush();
}