Ejemplo n.º 1
0
  /** 此方法做过修改,改成一页显示 */
  public void updatePageView() {
    Log.d(LOG_TAG, "updatePageView");
    if (indexPage < 0 || indexPage > totalPageNum - 1) {
      return;
    }
    invisibleLayout.removeAllViews();
    mainLayout.removeAllViews();

    /* 当前页 */
    currentPage = mPageAdapter.getView(indexPage);
    if (currentPage == null) {
      currentPage = new WhiteView(mContext);
    }
    currentPage.setLayoutParams(new LayoutParams(contentWidth, contentHeight));
    mainLayout.addView(currentPage);

    /* 背景页 */
    middlePage = new WhiteView(mContext);
    middlePage.setLayoutParams(new LayoutParams(contentWidth, contentHeight));
    invisibleLayout.addView(middlePage);

    /* 前一页 */
    prevPage = null;
    if (indexPage > 0) {
      prevPage = mPageAdapter.getView(indexPage - 1);
    }
    if (prevPage == null) {
      prevPage = new WhiteView(mContext);
    }
    prevPage.setLayoutParams(new LayoutParams(contentWidth, contentHeight));
    invisibleLayout.addView(prevPage);

    /* 后一页 */
    nextPage = null;
    if (indexPage < totalPageNum - 1) {
      nextPage = mPageAdapter.getView(indexPage + 1);
    }
    if (nextPage == null) {
      nextPage = new WhiteView(mContext);
    }
    nextPage.setLayoutParams(new LayoutParams(contentWidth, contentHeight));
    invisibleLayout.addView(nextPage);

    Log.d(LOG_TAG, "updatePageView finish");
  }