示例#1
0
 private void calculatedItemSpacing(List<CreditsItem> list, int height) {
   int offset = height + 30;
   for (CreditsItem item : list) {
     offset += item.getBeforeSpacing();
     item.setOffset(offset);
     offset += item.getAfterSpacing();
   }
 }
示例#2
0
  private synchronized void prepareFrame(long ellapsed) {
    if (credits.size() > 0) {
      CreditsItem last = credits.get(credits.size() - 1);
      if (last.getOffset() < 0) {
        calculatedItemSpacing(credits, mHeight);
      }
    }

    if (mTouch) {
      mDY = 0;
    } else {
      mDY = (mDY / 3) - 1;
    }

    for (CreditsItem item : credits) {
      item.prepare(ellapsed, mWidth, mHeight, mDY);
    }
  }
示例#3
0
  private synchronized void drawFrame() {
    if (mThread != null) {
      mThread.cont = false;
    }

    Canvas canvas = null;
    try {
      canvas = mHolder.lockCanvas(null);
      if (canvas != null) {
        drawBackground(canvas);

        for (CreditsItem item : credits) {
          item.draw(canvas);
        }
      }

    } finally {
      if (canvas != null) {
        mHolder.unlockCanvasAndPost(canvas);
      }
    }
  }